Gents, please have a look at this development:
2016-08-21
- Made a new STATEMACHINE_CONTROLLABLE object, which models a base state
machine class to be inherited by AI controllable classes.
-- Created the class as such that intherited AI classes become "finite
state machines".
-- Each STATEMACHINE_CONTROLLABLE class contains a Controllable object,
which is one Unit, Client or Group object.
-- Added state transition functions that are called before and after the
state transition.
-- Event functions are automatically added to the class, based on the
FSMT.
-- Added immediate and delayed event processing as part of the
STATEMACHINE_CONTROLLABLE class.
--- Events that start with __Event are processed with a delay. The delay
is given in seconds as a parameter.
- Created a new AI_PATROLZONE class, which inherites
STATEMACHINE_CONTROLLABLE.
-- This class implements a complete new revamped patrol zone AI pattern.
-- Created a new test directory: Moose_Test_AI_PATROLZONE with test
missions.
2016-08-15
- Removed the old classes and moved into an "Old" folder in the
Moose/Development folder.
-- Cleaned Moose.lua + Documented class types
-- Cleaned Create_Moose.bat + Documented class types
- Extend the ZONE_BASE class with a probability randomization factor,
that can be used for zone randomization purposes.
- Documented the Zone module classes.
- Changed and removed the POINT_VEC3 SmokeColor and FlareColor
structure. Replaced with SMOKECOLOR and FLARECOLOR types.
-- Replaced also code in test missions with SMOKECOLOR and FLARECOLOR
references.
- Added change logs of API changes in MOOSE documentation.
- Added ZONE_BASE:GetName() method.
- Added ZONE_BASE:GetZoneProbability() method.
- Added ZONE_BASE:SetZoneProbability() method.
- Added ZONE_BASE:GetZoneMaybe() method.
- Added SPAWN:InitRandomizeZones() method.
- Renamed SPAWN:CleanUp() method to SPAWN:InitCleanUp() method.
- Reviewed documentation of the PatrolZone module and PATROLZONE class.
2016-08-14
- Changed Spawn APIs to express Group position and Unit position
randomization.
- Changed the API protocol of SpawnInZone() method.
-- Removed OuterRadius and InnerRadius parameters !!!
- Changed the API protocol of SpawnFromUnit() method.
-- Removed OuterRadius and InnerRadius parameters !!!
- Added InitRandomizeUnits() method, taking 3 parameters:
-- RandomizeUnits given the value true, will randomize the units upon
spawning, false (default) will not randomize the untis.
-- OuterRadius is the outer radius of the band where the units will be
spawned, if RandomizeUnits is true.
-- InnerRadius is the inner radius of the band where the units will not
be spawned, if RandomizeUnits is true.
- Removed SpawnFunction() method.
- Added OnSpawnGroup() method as the new official CallBack function
method to catch when a new function will be called.
-- Documented OnSpawnGroup() method.
- Renamed Limit() method to InitLimit() method.
- Renamed Array() method to InitArray() method.
- Renamed RandomizeRoute() method to InitRandomizeRoute() method.
- Renamed RandomizeTemplate() method to InitRandomizeTemplate() method.
- Renamed UnControlled() method to InitUnControlled method.
- Reviewed all test missions for the changes executed and made adaptions
where necessary + re-tests.
2016-08-12
- Temporary release of the new cargo handling.
-- Released available functionality to handle one CARGO_UNIT loading,
boarding, unloading.
-- Created CARGO_UNIT test missions.
- Added Translate() method in POINT_VEC3, translating a 3D point over
the horizontal plane with a Distance and Angle coordinate.
- Added SPAWN:InitRandomizeZones() method.
- Renamed SPAWN:CleanUp() method to SPAWN:InitCleanUp() method.
- Reviewed documentation of the PatrolZone module and PATROLZONE class.
- Reviewed all test missions
- Removed the old classes and moved into an "Old" folder in the
Moose/Development folder.
-- Cleaned Moose.lua + Documented class types
-- Cleaned Create_Moose.bat + Documented class types
- Extend the ZONE_BASE class with a probability randomization factor,
that can be used for zone randomization purposes.
- Documented the Zone module classes.
- Changed and removed the POINT_VEC3 SmokeColor and FlareColor
structure. Replaced with SMOKECOLOR and FLARECOLOR types.
-- Replaced also code in test missions with SMOKECOLOR and FLARECOLOR
references.
- Renamed UnControlled() method to InitUnControlled method.
2016-08-14
- Changed Spawn APIs to express Group position and Unit position
randomization.
- Changed the API protocol of SpawnInZone() method.
-- Removed OuterRadius and InnerRadius parameters !!!
- Changed the API protocol of SpawnFromUnit() method.
-- Removed OuterRadius and InnerRadius parameters !!!
- Added InitRandomizeUnits() method, taking 3 parameters:
-- RandomizeUnits given the value true, will randomize the units upon
spawning, false (default) will not randomize the untis.
-- OuterRadius is the outer radius of the band where the units will be
spawned, if RandomizeUnits is true.
-- InnerRadius is the inner radius of the band where the units will not
be spawned, if RandomizeUnits is true.
- Removed SpawnFunction() method.
- Added OnSpawnGroup() method as the new official CallBack function
method to catch when a new function will be called.
-- Documented OnSpawnGroup() method.
- Renamed Limit() method to InitLimit() method.
- Renamed Array() method to InitArray() method.
- Renamed RandomizeRoute() method to InitRandomizeRoute() method.
- Renamed RandomizeTemplate() method to InitRandomizeTemplate() method.
- Reviewed all test missions for the changes executed and made adaptions
where necessary + re-tests.