[SuperWeaponTypes] XX=HealSpecial [RockScripts] 0=HealScript ;Create RockScripts [HealScript] ;Load RockScript data ;X=[Command,Argument1, Argument2] ;Find Command by name ;Interpret arguments 1=1,HEALANIM,0 2=2,HealWH,-100 [HealSpecial] ... Type=Script ScriptHealScript ;Find by name --------------------- RockScriptTypes =============== Offset Type Desc ----------------------------------------------------------- 0x00 char* Name 0x04 long NumLines 0x08 long Pointer to: long Cmd[NumSWScripts] 0x0C Variant Pointer to: long Arg1[NumSWScripts] 0x10 Variant Pointer to: long Arg2[NumSWScripts] RockScript ========== Offset Type Desc ----------------------------------------------------------- 0x00 RockScriptType* RockScript 0x04 bool Running 0x05 0x06 0x07 0x08 long currentLine Variables: ---------- DWORD originalTargetCell DWORD currentTargetCell Techno* currentTargetTechno Super* currentSuper bool conditionTrueOrFalse Anim* currentAnim Commands ======== CommandName ID Argument1 Argument2 Example --------------------------------------------------------------------------------------------------------- //MAIN DoNothing 0x000 none none Wait 0x001 Frames none WaitTillAnimPercent 0x002 long none ExitScript 0x003 none none //ACTIONS ON TARGET CELL ??? 0x100 CreateAnimation 0x101 AnimationType none WarheadImpact 0x102 WarheadType Damage ParaDropInfantry 0x103 InfantryType Amount ParaDropUnit 0x104 UnitType Amount CreateInfantry 0x105 InfantryType none CreateUnit 0x106 UnitType none //TARGET CELL SELECTION ResetTargetCell 0x200 none none MoveTargetCell 0x201 X Y //Condition handling JumpToScriptIf 0x300 bool SWScript JumpToLineIf 0x301 bool long IsPlayerSide 0x302 SideType none IsPlayerCountry 0x303 HouseType none //GUI Commands 0x400 PrintMessage 0x401 char* none PlayEVA 0x402 char* none Money 0x403 long none //UPGRADES CostMult 0x501 TechnoType* float SpeedMult 0x502 TechnoType* float