Changes

Jump to navigation Jump to search
52 bytes added ,  14:51, 2 July 2017
→‎CGameCtnChallenge (03 043 000): Chunk 03043044: Class ID and version
Line 395: Line 395:  
  uint32 unknown (0)
 
  uint32 unknown (0)
 
  uint32 size
 
  uint32 size
  uint32 flags
+
  uint32 classID
  uint32 unknown (1, 2)
+
  uint32 version
uint32 count (number of metadata records)
+
if version >= 2:
for each count:
+
  uint32 count (number of metadata records)
  string varName
+
  for each count:
  uint32 varType
+
    string varName
  switch varType:
+
    uint32 varType
    case EType_Boolean:
+
    switch varType:
      bool
+
      case EType_Boolean:
    case EType_Integer:
+
        bool
      int32
+
      case EType_Integer:
    case EType_Real:
+
        int32
      float
+
      case EType_Real:
    case EType_Text:
+
        float
      string
+
      case EType_Text:
    case EType_Int2:
+
        string
      int32
+
      case EType_Int2:
      int32
+
        int32
    case EType_Int3:
+
        int32
      int32
+
      case EType_Int3:
      int32
+
        int32
      int32
+
        int32
    case EType_Vec2:
+
        int32
      float
+
      case EType_Vec2:
      float
+
        float
    case EType_Vec3:
+
        float
      float
+
      case EType_Vec3:
      float
+
        float
      float
+
        float
    case EType_Array:
+
        float
      uint32 typeKey
+
      case EType_Array:
      uint32 typeValue
+
        uint32 typeKey
      uint32 arrayElements
+
        uint32 typeValue
      for each arrayElements
+
        uint32 arrayElements
        switch typeKey:
+
        for each arrayElements
          case EType_Boolean:
+
          switch typeKey:
            bool
+
            case EType_Boolean:
          case EType_Integer:
+
              bool
            int32
+
            case EType_Integer:
          case EType_Real:
+
              int32
            float
+
            case EType_Real:
          case EType_Text:
+
              float
            string
+
            case EType_Text:
        switch typeValue:
+
              string
          case EType_Boolean:
+
          switch typeValue:
            bool
+
            case EType_Boolean:
          case EType_Integer:
+
              bool
            int32
+
            case EType_Integer:
          case EType_Real:
+
              int32
            float
+
            case EType_Real:
          case EType_Text:
+
              float
            string
+
            case EType_Text:
          case EType_Int2:
+
              string
            int32
+
            case EType_Int2:
            int32
+
              int32
          case EType_Int3:
+
              int32
            int32
+
            case EType_Int3:
            int32
+
              int32
            int32
+
              int32
          case EType_Vec2:
+
              int32
            float
+
            case EType_Vec2:
            float
+
              float
          case EType_Vec3:
+
              float
            float
+
            case EType_Vec3:
            float
+
              float
            float
+
              float
          case EType_Array:
+
              float
            recursively read multidimensional arrays
+
            case EType_Array:
 +
              recursively read multidimensional arrays
   −
<div class="mw-collapsible mw-collapsed">
   
The variable type is to be interpreted as follows:
 
The variable type is to be interpreted as follows:
<div class="mw-collapsible-content">
   
  enum eScriptType
 
  enum eScriptType
 
  {
 
  {
Line 485: Line 484:  
   EType_Int2
 
   EType_Int2
 
  };
 
  };
</div>
  −
</div>
      
'''03043054''' (skippable)
 
'''03043054''' (skippable)

Navigation menu