ViewVC Help
View File | Revision Log | View Changeset | Root Listing
root/Oni2/Daodan/MSVC/Oni_GameState.h
(Generate patch)

Comparing Daodan/MSVC/Oni_GameState.h (file contents):
Revision 568 by gumby, Wed Jun 30 04:25:00 2010 UTC vs.
Revision 573 by gumby, Thu Sep 9 09:27:04 2010 UTC

# Line 360 | Line 360 | typedef struct {
360          int field_28;                   //unknown
361   } OSD_Header;
362  
363 + typedef struct
364 + {
365 +        short ID;      
366 +        short flags;
367 +
368 +        short keys;
369 +        short open_time;
370 +
371 +        float activate_radius_squared;
372 +
373 +        short state;    
374 +        short blocked_frames;                                          
375 +
376 +        short open_time_left;                                          
377 +        short some_timer;
378 +
379 +        Vector3 center_offset;                                          
380 +        char name[63];
381 +        char pad;
382 +        void *class;
383 + } DoorOSD;
384 +
385 + typedef struct {
386 +        OSD_Header OSD;
387 +        DoorOSD Door; //incomplete
388 + } DoorObject;
389 +
390 +
391   typedef struct {
392          int32_t Flags;
393          int32_t Frame;
# Line 514 | Line 542 | typedef struct
542  
543   typedef struct { //Inventory
544          Weapon* Weapons[3];
545 <        int16_t field_1A0; //10 bucks says this is the current weapon
545 >        int8_t z_forced_holster;
546 >        int8_t z_forced_holster_is_magic;
547          int16_t AmmoUsed;                               //Ammo given for the char to use
548          int16_t HypoUsed;                               //Hypo given for the char to use
549          int16_t CellsUsed;                              //Cells given for the char to use
550          int16_t AmmoDropped;                    //Ammo the char drops
551          int16_t HypoDropped;                    //Hypo the char drops
552          int16_t CellsDropped;                   //Cells the char drops
553 <        int16_t field_1A;       //who knows? InverseHypoRegenRate?
554 <        int16_t field_1C;      
555 <        int16_t field_1E;
553 >        int16_t hypoRemaining;  //who knows? InverseHypoRegenRate?
554 >        int16_t hypoTimer;      
555 >        int16_t pad;
556          char hasLSI;
557          char field_1B5;
558 <        int16_t field_1B6;
558 >        int16_t shieldDisplayAmount;
559          int16_t ShieldUsed;                             //Bullet shield given for the char to use
560          int16_t CloakUsed;                              //Phase Cloak given for the char to use
561 <        int32_t field_28;                       //probably bullet shield dropped
561 >        int32_t numInvisibleFrames;                     //probably bullet shield dropped
562          int32_t DoorKeys;               //Lol. We can use this later for other sorts of items.
563   } Inventory;
564  
# Line 565 | Line 594 | typedef struct
594    int NotifyKnowledgeCallback;
595   } AI2KnowledgeState;
596  
568 /*  388 */ typedef struct //activecharacter
569 {
570  __int16 Number;
571  __int16 field_2;
572  PhyContext* PhyContext;
573  SphereTreeNode SphereTree;
574  SphereTreeNode SphereTree3[4];
575  SphereTreeNode SphereTree2[2];
576  __int16 field_B0;
577  __int16 field_B2;
578  __int16 field_B4;
579  char field_B6;
580  char gap_b7[1];
581  Vector3 field_B8;
582  Vector3 AccelerateWith;
583  int field_D0;
584  Vector3 field_D4;
585  __int16 field_E0;
586  char gap_e2[2];
587  int field_E4;
588  int field_E8;
589  int field_EC;
590  int field_F0;
591  __int16 field_F4;
592  __int16 IsInAir;
593  Vector3 FallingVelocity;
594  Vector3 JumpVelocity;
595  char field_110;
596  char field_111;
597  __int16 field_112;
598  __int16 field_114;
599  char gap_116[2];
600  int field_118;
601  int field_11C;
602  int field_120;
603  int field_124;
604  int field_128;
605  int field_12C;
606  BoundingSphere BoundingSphere;
607  Vector3 field_140;
608  Vector3 field_14C;
609  int field_158;
610  int field_15C;
611  Vector3 Location;
612  char gap_16c[24];
613  int AkiraNode;
614  int GraphNode;
615  int PelvisHeight;
616  int Movement_StatePtr;
617  int ActiveWeapon;
618  int field_198;
619  int InventoryWeapon;
620  char gap_1a0[2];
621  __int16 RedAmmoClipCount;
622  __int16 HypoCount;
623  __int16 GreenAmmoClipCount;
624  __int16 RedAmmoClipDropCount;
625  __int16 HypoDropCount;
626  __int16 GreenAmmoClipDropCount;
627  __int16 field_1AE;
628  __int16 InverseHypoRegenerationRate;
629  char DropShield;
630  char DropPhaseCloack;
631  char field_1B4;
632  char gap_1b5[1];
633  __int16 field_1B6;
634  __int16 Shield;
635  __int16 PhaseCloacking;
636  int field_1BC;
637  char gap_1c0[4];
638  __int16 field_1C4;
639  char gap_1c6[10];
640  int field_1D0;
641  int field_1D4;
642  char gap_1d8[4];
643  int field_1DC;
644  int NotIdleStartTime;
645  int TimeToIdle;
646  int field_1E8;
647  char gap_1ec[4];
648  int field_1F0;
649  char gap_1f4[2048];
650  int field_9F4;
651  char gap_9f8[36];
652  int field_A1C;
653  char gap_a20[3020];
654  int field_15EC;
655  char gap_15f0[60];
656  int field_162C;
657  int field_1630;
658  int field_1634;
659  int field_1638;
660  int field_163C;
661  char gap_1640[8];
662  BoundingBox BoundingBox;
663  int field_1660;
664  char gap_1664[4];
665  int ShieldPower;
666  char gap_166c[4];
667  int NumberOfKills;
668  int InflictedDamage;
669  int field_1678;
670  int field_167C;
671  char gap_1680[8];
672  __int16 field_1688;
673  __int16 field_168A;
674  int field_168C;
675  int field_1690;
676  char field_1694;
677  char field_1695;
678  __int16 field_1696;
679  int field_1698;
680  int field_169C;
681  char gap_16a0[2];
682  int field_16A2;
683  char gap_16a6[994];
684  char field_1A88;
685  char field_1A89;
686  char field_1A8A;
687  char field_1A8B;
688  Vector3 Executor_AimingDirection;
689  int field_1A98;
690  int field_1A9C;
691  int Executor_ActualMovementMode;
692  int field_1AA4;
693  int field_1AA8;
694  int field_1AAC;
695  char Executor_HasFacingOverride;
696  char gap_1ab1[3];
697  int Executor_AimingSpeed;
698  char field_1AB8;
699  char Executor_HasMoveOverride;
700  char gap_1aba[6];
701  int field_1AC0;
702  int field_1AC4;
703  int Executor_FacingOverride;
704  char Executor_HasAttackOverride;
705  char gap_1acd[1];
706  __int16 field_1ACE;
707  __int16 field_1AD0;
708  char gap_1ad2[6];
709  int field_1AD8;
710  int field_1ADC;
711  int field_1AE0;
712  int field_1AE4;
713  char Executor_HasThrowOverride;
714  char gap_1ae9[3];
715  int field_1AEC;
716  int field_1AF0;
717  int field_1AF4;
718  int Animation;
719  __int16 AnimationToState;
720  __int16 AnimationFromState;
721  __int16 AnimationType;
722  __int16 NextAnimationType;
723  __int16 field_1B04;
724  __int16 field_1B06;
725  char Stitch;
726  char gap_1b09[3];
727  int StitchHeight;
728  __int16 InterpolationFromState;
729  char gap_1b12[2];
730  Vector3 StitchVelocity;
731  __int16 InterpolationCurrentFrame;
732  __int16 InterpolationLength;
733  Quaternion InterpolationStartRotations[19];
734  char gap_1c54[4];
735  int field_1C58;
736  int field_1C5C;
737  int field_1C60;
738  int Overlay;
739  __int16 field_1C68;
740  __int16 field_1C6A;
741  int field_1C6C;
742  int field_1C70;
743  __int16 field_1C74;
744  char gap_1c76[2];
745  int field_1C78;
746  char gap_1c7c[12];
747  __int16 Frame;
748  __int16 SoftPause;
749  __int16 HardPause;
750  __int16 field_1C8E;
751  int field_1C90;
752  __int16 field_1C94;
753  __int16 field_1C96;
754  __int16 Dizzy;
755  __int16 field_1C9A;
756  int field_1C9C;
757  __int16 AnimationVarient;
758  __int16 TimeToPeace;
759  char NumAnimationAttachedParticles;
760  char gap_1ca5[1];
761  __int16 field_1CA6;
762  AttachedParticle AnimationAttachedParticles[16];
763  int TRAMParticles;
764  char FixedParticlesAttached;
765  char FixedParticlesStarted;
766  __int16 NumFixedParticles;
767  AttachedParticle FixedParticles[16];
768  __int16 CurrentAnimationType;
769  char gap_1eb2[2];
770  int field_1EB4;
771  char field_1EB8;
772  char gap_1eb9[33];
773  __int16 field_1EDA;
774  int field_1EDC;
775  char gap_1ee0[4];
776  int field_1EE4;
777  int field_1EE8;
778  int field_1EEC;
779  Quaternion Rotations[19];
780  Quaternion OverlayRotations[19];
781  int field_2150;
782  char gap_2154[4];
783  GameInput Input;
784  int PrevActions1;
785  int PrevActions2;
786  int SprintTimer;
787  char field_2194;
788  char field_2195;
789  char gap_2196[2];
790  Vector3 field_2198;
791  int field_21A4;
792  int field_21A8;
793  int field_21AC;
794  Vector3 field_21B0;
795  int HeadFacing;
796  int HeadPitch;
797  int field_21C4;
798  int field_21C8;
799  int field_21CC;
800  int field_21D0;
801  char field_21D4;
802  char gap_21d5[3];
803  int field_21D8;
804  char field_21DC;
805  char field_21DD;
806  char field_21DE;
807  char field_21DF;
808  char field_21E0;
809  char HasAlternateTrigger;
810  char field_21E2;
811  char ReleaseTrigger;
812  char ReleaseAlternateTrigger;
813  char TurningLeft;
814  char TurningRight;
815  char gap_21e7[1];
816  int field_21E8;
817  int field_21EC;
818  __int16 field_21F0;
819  char gap_21f2[2];
820  PlayingFilm PlayingFilm;
821  char gap_2218[4];
822  int field_221C;
823  char gap_2220[8];
824  int field_2228;
825  char gap_222c[76];
826  Matrix4x3 BoneMatrices[19];
827  Matrix4x3 WeaponMatrix;
828  char gap_2638[432];
829  int field_27E8;
830  char gap_27ec[4];
831  __int16 field_27F0;
832  __int16 field_27F2;
833  int field_27F4;
834  int field_27F8;
835  __int16 ShadowIndex;
836  char field_27FE;
837  char gap_27ff[1];
838  char field_2800;
839  char field_2801;
840  char ShieldParts[19];
841  char field_2815;
842  char gap_2816[2];
843  int field_2818;
844  __int16 field_281C;
845  char gap_281e[2];
846  int field_2820;
847  int field_2824;
848  int field_2828;
849  int field_282C;
850  __int16 field_2830;
851  __int16 field_2832;
852  char gap_2834[1];
853  char field_2835;
854  char field_2836;
855  char field_2837;
856 } ActiveCharacter;
857
597   typedef struct
598   {
599    char Name[128];
# Line 1070 | Line 809 | typedef struct
809    int field_1DC;
810    int field_1E0;
811    int IdleDelay;
812 <  int field_1E8;
812 >  int charType;
813    char gap_1ec[4];
814    int CombatFlags;
815    int JobId;
# Line 1289 | Line 1028 | typedef struct
1028   }PHGraph
1029   ;
1030  
1031 + /*  388 */ typedef struct //activecharacter
1032 + {
1033 +  __int16 Number;
1034 +  __int16 field_2;
1035 +  PhyContext* PhyContext;
1036 +  SphereTreeNode SphereTree;
1037 +  SphereTreeNode SphereTree3[4];
1038 +  SphereTreeNode SphereTree2[2];
1039 +  __int16 field_B0;
1040 +  __int16 field_B2;
1041 +  __int16 field_B4;
1042 +  char field_B6;
1043 +  char gap_b7[1];
1044 +  Vector3 field_B8;
1045 +  Vector3 AccelerateWith;
1046 +  int field_D0;
1047 +  Vector3 field_D4;
1048 +  __int16 field_E0;
1049 +  char gap_e2[2];
1050 +  int field_E4;
1051 +  int field_E8;
1052 +  int field_EC;
1053 +  int field_F0;
1054 +  __int16 field_F4;
1055 +  __int16 IsInAir;
1056 +  Vector3 FallingVelocity;
1057 +  Vector3 JumpVelocity;
1058 +  char field_110;
1059 +  char field_111;
1060 +  __int16 field_112;
1061 +  __int16 field_114;
1062 +  char gap_116[2];
1063 +  int field_118;
1064 +  int field_11C;
1065 +  int field_120;
1066 +  int field_124;
1067 +  int field_128;
1068 +  int field_12C;
1069 +  BoundingSphere BoundingSphere;
1070 +  Vector3 field_140;
1071 +  Vector3 field_14C;
1072 +  int field_158;
1073 +  int field_15C;
1074 +  Vector3 Location;
1075 +  char gap_16c[24];
1076 +  int AkiraNode;
1077 +  int GraphNode;
1078 +  int PelvisHeight;
1079 +  int Movement_StatePtr;
1080 +  int ActiveWeapon;
1081 +  int field_198;
1082 +  int InventoryWeapon;
1083 +  char gap_1a0[2];
1084 +  __int16 RedAmmoClipCount;
1085 +  __int16 HypoCount;
1086 +  __int16 GreenAmmoClipCount;
1087 +  __int16 RedAmmoClipDropCount;
1088 +  __int16 HypoDropCount;
1089 +  __int16 GreenAmmoClipDropCount;
1090 +  __int16 field_1AE;
1091 +  __int16 InverseHypoRegenerationRate;
1092 +  char DropShield;
1093 +  char DropPhaseCloack;
1094 +  char field_1B4;
1095 +  char gap_1b5[1];
1096 +  __int16 field_1B6;
1097 +  __int16 Shield;
1098 +  __int16 PhaseCloacking;
1099 +  int field_1BC;
1100 +  char gap_1c0[4];
1101 +  __int16 field_1C4;
1102 +  char gap_1c6[10];
1103 +  int field_1D0;
1104 +  int field_1D4;
1105 +  char gap_1d8[4];
1106 +  int field_1DC;
1107 +  int NotIdleStartTime;
1108 +  int TimeToIdle;
1109 +  int field_1E8;
1110 +  char gap_1ec[4];
1111 +  int field_1F0;
1112 +  char gap_1f4[2048];
1113 +  int field_9F4;
1114 +  char gap_9f8[36];
1115 +  int field_A1C;
1116 +  char gap_a20[3020];
1117 +  int field_15EC;
1118 +  char gap_15f0[60];
1119 +  int field_162C;
1120 +  int field_1630;
1121 +  int field_1634;
1122 +  int field_1638;
1123 +  int field_163C;
1124 +  char gap_1640[8];
1125 +  BoundingBox BoundingBox;
1126 +  int field_1660;
1127 +  char gap_1664[4];
1128 +  int ShieldPower;
1129 +  char gap_166c[4];
1130 +  int NumberOfKills;
1131 +  int InflictedDamage;
1132 +  int field_1678;
1133 +  int field_167C;
1134 +  char gap_1680[8];
1135 +  __int16 field_1688;
1136 +  __int16 field_168A;
1137 +  int field_168C;
1138 +  int field_1690;
1139 +  char field_1694;
1140 +  char field_1695;
1141 +  __int16 field_1696;
1142 +  int field_1698;
1143 +  int field_169C;
1144 +  char gap_16a0[2];
1145 +  int field_16A2;
1146 +  char gap_16a6[994];
1147 +  char field_1A88;
1148 +  char field_1A89;
1149 +  char field_1A8A;
1150 +  char field_1A8B;
1151 +  Vector3 Executor_AimingDirection;
1152 +  int field_1A98;
1153 +  int field_1A9C;
1154 +  int Executor_ActualMovementMode;
1155 +  int field_1AA4;
1156 +  int field_1AA8;
1157 +  int field_1AAC;
1158 +  char Executor_HasFacingOverride;
1159 +  char gap_1ab1[3];
1160 +  int Executor_AimingSpeed;
1161 +  char field_1AB8;
1162 +  char Executor_HasMoveOverride;
1163 +  char gap_1aba[6];
1164 +  int field_1AC0;
1165 +  int field_1AC4;
1166 +  int Executor_FacingOverride;
1167 +  char Executor_HasAttackOverride;
1168 +  char gap_1acd[1];
1169 +  __int16 field_1ACE;
1170 +  __int16 field_1AD0;
1171 +  char gap_1ad2[6];
1172 +  int field_1AD8;
1173 +  int field_1ADC;
1174 +  int field_1AE0;
1175 +  int field_1AE4;
1176 +  char Executor_HasThrowOverride;
1177 +  char gap_1ae9[3];
1178 +  int field_1AEC;
1179 +  int field_1AF0;
1180 +  int field_1AF4;
1181 +  void* Animation;
1182 +  __int16 AnimationToState;
1183 +  __int16 AnimationFromState;
1184 +  __int16 AnimationType;
1185 +  __int16 NextAnimationType;
1186 +  __int16 field_1B04;
1187 +  __int16 field_1B06;
1188 +  char Stitch;
1189 +  char gap_1b09[3];
1190 +  int StitchHeight;
1191 +  __int16 InterpolationFromState;
1192 +  char gap_1b12[2];
1193 +  Vector3 StitchVelocity;
1194 +  __int16 InterpolationCurrentFrame;
1195 +  __int16 InterpolationLength;
1196 +  Quaternion InterpolationStartRotations[19];
1197 +  char gap_1c54[4];
1198 +  int field_1C58;
1199 +  int field_1C5C;
1200 +  int field_1C60;
1201 +  int Overlay;
1202 +  __int16 field_1C68;
1203 +  __int16 field_1C6A;
1204 +  int field_1C6C;
1205 +  int field_1C70;
1206 +  __int16 field_1C74;
1207 +  char gap_1c76[2];
1208 +  int field_1C78;
1209 +  char gap_1c7c[12];
1210 +  __int16 Frame;
1211 +  __int16 SoftPause;
1212 +  __int16 HardPause;
1213 +  __int16 field_1C8E;
1214 +  int field_1C90;
1215 +  __int16 field_1C94;
1216 +  __int16 field_1C96;
1217 +  __int16 Dizzy;
1218 +  __int16 field_1C9A;
1219 +  int field_1C9C;
1220 +  __int16 AnimationVarient;
1221 +  __int16 TimeToPeace;
1222 +  char NumAnimationAttachedParticles;
1223 +  char gap_1ca5[1];
1224 +  __int16 field_1CA6;
1225 +  AttachedParticle AnimationAttachedParticles[16];
1226 +  int TRAMParticles;
1227 +  char FixedParticlesAttached;
1228 +  char FixedParticlesStarted;
1229 +  __int16 NumFixedParticles;
1230 +  AttachedParticle FixedParticles[16];
1231 +  __int16 CurrentAnimationType;
1232 +  char gap_1eb2[2];
1233 +  int field_1EB4;
1234 +  char field_1EB8;
1235 +  char gap_1eb9[30];
1236 +  char field_1ED7;
1237 +  __int16 throwing;
1238 +  __int16 thrownBy;
1239 +  Character* ThrowTargetCharacter;
1240 +  int targetThrow; //animation
1241 +  int field_1EE4;
1242 +  int field_1EE8;
1243 +  int field_1EEC;
1244 +  Quaternion Rotations[19];
1245 +  Quaternion OverlayRotations[19];
1246 +  int field_2150;
1247 +  char gap_2154[4];
1248 +  GameInput Input;
1249 +  int PrevActions1;
1250 +  int PrevActions2;
1251 +  int SprintTimer;
1252 +  char field_2194;
1253 +  char field_2195;
1254 +  char gap_2196[2];
1255 +  Vector3 field_2198;
1256 +  int field_21A4;
1257 +  int field_21A8;
1258 +  int field_21AC;
1259 +  Vector3 field_21B0;
1260 +  int HeadFacing;
1261 +  int HeadPitch;
1262 +  int field_21C4;
1263 +  int field_21C8;
1264 +  int field_21CC;
1265 +  int field_21D0;
1266 +  char field_21D4;
1267 +  char gap_21d5[3];
1268 +  int field_21D8;
1269 +  char field_21DC;
1270 +  char field_21DD;
1271 +  char field_21DE;
1272 +  char field_21DF;
1273 +  char field_21E0;
1274 +  char HasAlternateTrigger;
1275 +  char field_21E2;
1276 +  char ReleaseTrigger;
1277 +  char ReleaseAlternateTrigger;
1278 +  char TurningLeft;
1279 +  char TurningRight;
1280 +  char gap_21e7[1];
1281 +  int field_21E8;
1282 +  int field_21EC;
1283 +  __int16 field_21F0;
1284 +  char gap_21f2[2];
1285 +  PlayingFilm PlayingFilm;
1286 +  char gap_2218[4];
1287 +  int field_221C;
1288 +  char gap_2220[8];
1289 +  int field_2228;
1290 +  char gap_222c[76];
1291 +  Matrix4x3 BoneMatrices[19];
1292 +  Matrix4x3 WeaponMatrix;
1293 +  char gap_2638[432];
1294 +  int field_27E8;
1295 +  char gap_27ec[4];
1296 +  __int16 field_27F0;
1297 +  __int16 field_27F2;
1298 +  int field_27F4;
1299 +  int field_27F8;
1300 +  __int16 ShadowIndex;
1301 +  char field_27FE;
1302 +  char gap_27ff[1];
1303 +  char field_2800;
1304 +  char field_2801;
1305 +  char ShieldParts[19];
1306 +  char field_2815;
1307 +  char gap_2816[2];
1308 +  int field_2818;
1309 +  __int16 field_281C;
1310 +  char gap_281e[2];
1311 +  int field_2820;
1312 +  int field_2824;
1313 +  int field_2828;
1314 +  int field_282C;
1315 +  __int16 field_2830;
1316 +  __int16 field_2832;
1317 +  char gap_2834[1];
1318 +  char field_2835;
1319 +  char field_2836;
1320 +  char field_2837;
1321 + } ActiveCharacter;
1322 +
1323   typedef struct
1324   {
1325    int TimerMode;
# Line 1395 | Line 1426 | typedef struct
1426    char gap_1679da[2];
1427    int field_1679DC;
1428   } GameState;
1429 < #endif
1429 > #endif
1430 >
1431 > typedef struct
1432 > {
1433 >        int                     priority;
1434 >        int timer;                                              // amount of time to display the text
1435 >        char                            prefix[10];     // prefix for the line
1436 >        char                            text[502];              // text on the line
1437 >        const char                      *identifier;
1438 >        int                     text_color;
1439 >        int                     text_shadow;
1440 > } COtTextEntry;
1441 >
1442 > typedef struct
1443 > {
1444 >        void            *font_family;
1445 >        void *text_context;                             // text context to do the drawing
1446 >        short                   formatting;
1447 >        short                   font_size;
1448 >        char                            scale_font;
1449 >        char                            bottom_justify;
1450 >        char                            display_completion;
1451 >        char                            fade_over_bounds;
1452 >        char                            use_formatting_commands;
1453 >
1454 >        short                           bounds[4];
1455 >        short                   num_text_entries;
1456 >        short max_text_entries;
1457 >        char pad[3];
1458 >        COtTextEntry            *text_entries;                          // an array (num_text_entries long) of COtTextEntry
1459 >                int blah;
1460 >                int blah2;
1461 >                        int blah3;
1462 > } COtTextArea;

Diff Legend

Removed lines
+ Added lines
< Changed lines (old)
> Changed lines (new)