70 Commits

Author SHA1 Message Date
FlightControl
b9b829a09a Various fixes
-- Fixed AI_CAP_ZONE: Groups not engaging when an engage was "aborted",
but was actually erroneously set to "Accomplished". Is fixed now. An
engage that cannot be accomplished (due to no unit in the Engage Zone,
will be Aborted). Groups are engaging now when an Engage Zone is set.
-- Fixed FSM: There was a big issue with delayed function scheduling.
When creating "loops", meaning an Event handler calles again itself
delayed, would start propagating multiple times when the event was
scheduled, and another schedule of the event would be planned.... Thus 2
to x events handled and would end in chaos. Implemented delayed event
scheduling accepting a *negative* parameter in seconds, which would
check if an event would be already scheduled. If so, no new event would
be scheduled until the event handler would have been processed. In this
way, only maximum one event can be scheduled when this is wanted (this
is not always the case by the mission designer). So providing a negative
value as the seconds would make the event being scheduled only once!
-- Added EventPriority field in EVENT logging
-- Removed logging from POSITIONABLE
-- Moved the start of the detection to the Start event handler in
AI_CAP_ZONE
2017-02-05 18:06:29 +01:00
FlightControl
a530cea326 Fixed glitch in EVENT with new EventPriority logic
The Init method was wrong. It is fixed now.
SPAWN and other event handling will now be correctly processed!
2017-02-05 10:26:07 +01:00
FlightControl
8acfb79c0e USAF agressors fix (and also for other countries with _ names in country.id)
-- reworked the DATABASE template population logic
2017-02-05 08:31:03 +01:00
FlightControl
52f4051901 Various Fixes
-- Documentation fixes with links not working.
-- MENU_CLIENT_COMMAND had a small glitch, fixed that one too.
-- Implemented new Event Dispatcher.
--
2017-02-04 15:16:32 +01:00
FlightControl
be4d51237b Improved the event handling
-- Removed the sort
-- Implemented the order in the existing table.
-- 5 levels
-- _DATABASE = 1
-- SET and SET_ derived classes = 2
-- UNIT = 3
-- GROUP = 4
-- all other = 5
2017-02-04 11:35:58 +01:00
FlightControl
ab345f5ad2 New Event Dispatching based on priorities
-- First _DATABASE
-- then SETS
-- then the rest
-- changed AIRBASEPOLICE
2017-02-03 22:18:51 +01:00
Sven Van de Velde
30c7fce430 comment 2nd line that makes menu crash 2017-02-02 08:37:57 +01:00
Sven Van de Velde
e4ad046bbf commented line that crashed menu... 2017-02-02 08:31:33 +01:00
132nd-etcher
ac7dd8cb2f
add "inner" and "outer" parameter to ZONE_RADIUS:GetRandomVec2() method 2017-01-28 20:08:30 +01:00
FlightControl
8a1765141a Task Scores are now calculating correctly
The task scores are now working . Jippie!!!!
Demo time!!!
2017-01-23 15:04:20 +01:00
FlightControl
d4497fbf5e Cleanup of logging volume in fsm.lua
-- replaced all self:E with self:T
2017-01-23 14:16:24 +01:00
FlightControl
84a1fc1ac7 Documentation of SetState and GetState and BASE documentation update.
-- SetState documented.
-- GetState documented.
-- BASE main documentation.
-- Test mission updated and documentation.
2017-01-20 20:15:02 +01:00
FlightControl
15fdb0fd45 Fixed AI_CAP
-- ROE fine tuned.
-- Detection events cross firing and exploding...
-- Crash, Ejected, PilotDead is detected, makes the FSM stop.
-- FSM bug fixed. There was an issue with the onbefore and onleave
events returning false, which did not stop the transition! Fixed now.
-- Event calling can return errors, and these must be logged correctly
-> xpcall implemented.
-- Added help from moose club members as a reference in the
documentation. -> delta99 en whisper.
-- ...
2017-01-19 19:51:37 +01:00
FlightControl
1206c51fe1 Final updates 2017-01-17 12:19:35 +01:00
FlightControl
6d5655e56a Progress on AI_CAS_ZONE and AI_PATROL_ZONE rework. 2017-01-15 11:11:58 +01:00
FlightControl
6716f2907b Fixed AI_BALANCER problem with AI not patrolling...
-- Need to redo a video, because I gave the wrong example ...
2017-01-12 12:19:23 +01:00
FlightControl
51780b1d9b AI_BALANCER revised completely
-- Revised and Added documentation.
-- Added pictures to documentation.
-- Add/Exit clients is working. AI balances perfectly.
-- FSM bug fixed. SUBS should not execute OnAfter, OnEnter
2017-01-08 21:07:25 +01:00
FlightControl
1f90c0c766 Fixed respawn bug in AI_BALANCER + Scheduler bug
AI_BALANCER respawns back the AI. Bug was in the FSM. In a transition,
when states are the same, the events SHOULD execute.
Added spawn delay interval option API SetSpawnInterval().
Bug that prevented AI_BALANCER to start if multiple AI_BALANCERs is also
fixed.
Fixed bug in scheduler dispatcher. Multiple schedules for the same
scheduler work now too!
2017-01-08 03:53:05 +01:00
FlightControl
196f85f07b AI_BALANCER fixes and other stuff 2017-01-07 16:44:41 +01:00
FlightControl
fc100716e0 FSM Updates 2017-01-06 11:08:42 +01:00
FlightControl
a5298a950f Deleting JPG Files ... 2017-01-06 07:42:08 +01:00
FlightControl
743609310b FSM Documentation 2017-01-06 07:37:20 +01:00
FlightControl
df0adff9f1 FSM Documentation 2017-01-05 22:12:09 +01:00
FlightControl
64092dbb2e FSM documentation 2017-01-05 16:12:07 +01:00
FlightControl
640af3d964 FSM documentation phase 1 done. 2017-01-05 08:42:07 +01:00
FlightControl
3017f10906 FSM Documentation 2017-01-05 08:34:15 +01:00
FlightControl
f79539965f FSM documentation 2017-01-04 11:13:49 +01:00
FlightControl
6bd4442d84 FSM Documentation 2017-01-04 10:40:58 +01:00
FlightControl
335ef0d471 FSM Documentation 2017-01-04 10:33:11 +01:00
FlightControl
d7e3d5fc79 FSM doc 2016-12-23 07:11:22 +01:00
FlightControl
54d0c20d5b FSM docs 2016-12-23 07:02:29 +01:00
FlightControl
13854370e4 Documentation FSM 2016-12-23 06:50:24 +01:00
FlightControl
cff0d8bb2b FSM Documentation 2016-12-21 17:31:24 +01:00
FlightControl
cb993c4df5 Switched for Event and State Transition handlers the parameter order
The parameters are now: From, Event, To
The old parameter order was: Event, From, To
2016-12-20 09:24:19 +01:00
FlightControl
dc3ce7226e Documentation 2016-12-19 21:42:17 +01:00
FlightControl
b21f1144fb Documentation of the BASE class 2016-12-19 21:15:10 +01:00
FlightControl
0f8ed48183 Fixed DETECTION_DISPATCHER (I think)..
-- Need to test this in a group.
-- Revised messages adding @ signs, which represent to who the message
is targetted.
2016-12-18 11:39:16 +01:00
FlightControl
ce0be4dcf7 Fixing TASK_DISPATCHER and optimizing reports 2016-12-18 06:09:27 +01:00
FlightControl
33f42351e4 Progress 2016-12-16 12:56:36 +01:00
FlightControl
d62acf421e Progress 2016-12-15 14:51:08 +01:00
FlightControl
365034ad69 Finalized the SCHEDULER and SCHEDULERDISPATCHER
- Done, time to remerge the work.
2016-12-14 11:10:00 +01:00
FlightControl
84e2361829 Progress 2016-12-14 06:59:43 +01:00
FlightControl
761053c95e Progress 2016-12-14 06:58:24 +01:00
FlightControl
02d4bbf3ff Getting somewhere, with the new schedulers, the TASK logic works now much better!
- Schedulers are stopped when the parent object is destroyed.
- Parent objects are garbage cleaned.
- Destructors are called.

Jippie! Results!!!
2016-12-13 13:05:21 +01:00
FlightControl
e98814e8d4 Progress
Fixed that schedulers, which are not attached to an object, after
garbage collect were removed also from the scheduler dispatcher. The
scheduler dispatcher now attaches the schedulers to 2 different tables.
- A weak table ObjectSchedulers, which contains scheduler attached to
objects. When the object is removed, the scheduler is removed also.
- A weak table with PersistentSchedulers, which contains schedulers not
attached to objects. These schedulers are persistent, even after garbage
collection.

I hope this now makes the circle round...
2016-12-13 12:29:28 +01:00
FlightControl
152c8a986d Pogress
- Still a problem, getting obscolete calls after a garbage collect where
i should not get them ...
2016-12-13 12:10:12 +01:00
FlightControl
6c6b26e33e Progress 2016-12-13 11:25:39 +01:00
FlightControl
e5b386b9e5 Progress 2016-12-13 10:24:19 +01:00
FlightControl
15134d7f4e Formidastic, now when nillifying the Test1 and Test 3, the destructor of the SCHEDULER is called
The references of nillified and garbage collected SCHEDULERS are removed
from the _TIMERDISPATCHER. This results now in schedules that are still
pending to be executed, but are nillified, that these schedules will
never be executed!!!

Sven
2016-12-12 17:41:58 +01:00
FlightControl
b81b483f0b First prototype of the scheduler dispatcher is ready... It works, but the code was very difficult...
So, when the Scheduler that is passed to the AddScheduler is nillified,
the internal arrays that keep the Scheduler reference are also
nillified. And it does what i need for further utilization in MOOSE
classes. When the Scheduler is nillified, but, a schedule was planned
for that Scheduler, once the scheduler fires off, it will ignore that
call... cool.

Sven
2016-12-12 16:44:56 +01:00