diff --git a/AirstrikeClass.h b/AirstrikeClass.h index 4885040a..98ac2a85 100644 --- a/AirstrikeClass.h +++ b/AirstrikeClass.h @@ -32,6 +32,9 @@ class NOVTABLE AirstrikeClass : public AbstractClass void StartMission(ObjectClass* pTarget) { JMP_THIS(0x41D830); } + void InvalidatePointer(void* ptr) + { JMP_THIS(0x41D540); } + //Constructor AirstrikeClass(TechnoClass* pOwner) noexcept : AirstrikeClass(noinit_t()) diff --git a/TechnoClass.h b/TechnoClass.h index 5ba0406a..19016318 100644 --- a/TechnoClass.h +++ b/TechnoClass.h @@ -536,6 +536,20 @@ class NOVTABLE TechnoClass : public RadioClass void BaseIsAttacked(TechnoClass* pEnemy) { JMP_THIS(0x708080); } + void GattlingRateUp(int value) + { JMP_THIS(0x70DE70); } + + void GattlingRateDown(int value) + { JMP_THIS(0x70E000); } + + void ReleaseLocomotor(bool setTarget) + { JMP_THIS(0x70FEE0); } + + // changes locomotor to the given one, Magnetron style + // mind that this locks up the source too, Magnetron style + void ImbueLocomotor(FootClass* target, CLSID clsid) + { JMP_THIS(0x710000); } + //Constructor TechnoClass(HouseClass* pOwner) noexcept : TechnoClass(noinit_t()) diff --git a/TechnoTypeClass.h b/TechnoTypeClass.h index b092f089..745f9bd0 100644 --- a/TechnoTypeClass.h +++ b/TechnoTypeClass.h @@ -157,6 +157,13 @@ class NOVTABLE TechnoTypeClass : public ObjectTypeClass return 0u != (test & bitHouseType); } + // weapon related + WeaponStruct* GetWeapon(int index) + { JMP_THIS(0x7177C0); } + + WeaponStruct* GetEliteWeapon(int index) + { JMP_THIS(0x7177E0); } + // weapon related WeaponStruct& GetWeapon(size_t const index, bool const elite) { return elite ? this->EliteWeapon[index] : this->Weapon[index]; diff --git a/UnitClass.h b/UnitClass.h index 7e4a7952..2d69ce9a 100644 --- a/UnitClass.h +++ b/UnitClass.h @@ -107,7 +107,7 @@ class NOVTABLE UnitClass : public FootClass public: - int unknown_int_6C0; + int CurrentFiringFrame; UnitTypeClass* Type; UnitClass* FollowerCar; // groovy - link defined in the map's [Units] section, looked up on startup int FlagHouseIndex; // Carrying the flag of this House