summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Add chase state and ability to detect and fire at other tanks. This reveals anEskil Abrahamsen Blomfeldt2009-05-062-4/+92
| | | | assert in the state machine which needs to be debugged.
* Avoid passage where the walls meet the edge of the scene rect.Eskil Abrahamsen Blomfeldt2009-05-061-5/+6
|
* get rid of marginKent Hansen2009-05-051-1/+2
|
* doc improvementsKent Hansen2009-05-054-23/+51
|
* get rid of warningsKent Hansen2009-05-052-1/+3
|
* Merge branch 'kinetic-animations' into kinetic-statemachineKent Hansen2009-05-052-100/+153
|\
| * Doc: Work on QAbstractAnimation class descriptionGeir Vattekar2009-05-051-46/+49
| |
| * Doc: Git merge conflict in QVariantAnimationGeir Vattekar2009-05-051-7/+0
| |
| * Doc: Updated QVariantAnimation class descriptionGeir Vattekar2009-05-052-47/+114
| |
| * Small refactor of QVariantAnimation::updateCurrentValueThierry Bastian2009-04-291-17/+7
| | | | | | | | | | | | we only test the inequality of the new value compared to the previous one in case we have something conected to currentValueChanged signal. The comparison is quite heavy in QVariant. So avoiding it a good thing.
* | add event as argument to onEntry(), onExit() and onTransition()Kent Hansen2009-05-0542-130/+140
| | | | | | | | | | | | | | | | | | Accessing the event can be useful. E.g., onEntry() can do some common event processing regardless of which transition caused the state to be entered; onTransition() can be used in combination with eventTest(), where eventTest() would first check that the input matches some criteria, and then the actual processing of that input would be done in onTransition.
* | Add randomness.Eskil Abrahamsen Blomfeldt2009-05-051-2/+2
| |
* | Make sure target state is set correctly. Also make sure eventTest() actuallyEskil Abrahamsen Blomfeldt2009-05-051-5/+8
| | | | | | | | overrides the virtual function.
* | Set collidedLine for the implicit walls around the scene to allow for collisionEskil Abrahamsen Blomfeldt2009-05-051-4/+21
| | | | | | | | response.
* | Make sure the correct position/direction is actually set at the end of aEskil Abrahamsen Blomfeldt2009-05-051-10/+16
| | | | | | | | loop. Also make sure we set the direction to an angle within 360 degrees.
* | Fix support reverse actions. Logic was broken and would always return falseEskil Abrahamsen Blomfeldt2009-05-051-2/+2
| | | | | | | | immediately for reverse actions, thus immediately stopping them.
* | ignore QState::assignProperty() calls where the target object is 0Kent Hansen2009-05-042-0/+8
| |
* | Add unfinished "more advanced" AI for errorstate.Eskil Abrahamsen Blomfeldt2009-04-306-5/+184
| |
* | When restoring properties in descendants of a state which assigns it a value,Eskil Abrahamsen Blomfeldt2009-04-302-2/+69
| | | | | | | | | | | | | | | | the property should be restored to the value assigned by the ancestor state. When restoreProperties is on, assigning a value in a state means it will have that value as long as the state is active, unless an active state deeper in the hierarchy assigns it a different value. This is basically a stack of "initial" values, but implemented using the parent hierarchy of the state instead.
* | The intuitive interpretation of RestoreProperties is that a value isEskil Abrahamsen Blomfeldt2009-04-302-1/+66
| | | | | | | | | | | | | | | | | | potentially restored once the state that set it is exited. So if you have a parent state P which sets 'foo' and then several child states of P, the property should not be restored as long as P is active, regardless of which transitions are taken inside P and what properties are being assigned there. Before, we would restore the property when we entered a state that did not assign it, ignoring what properties where being assigned in the parent.
* | Make design better. Remove the Tank interface. This is now an implicit interfaceEskil Abrahamsen Blomfeldt2009-04-3016-86/+65
| | | | | | | | based on the meta-object system.
* | Add two AIs: They are both designed to do the same. Spin until they see a tankEskil Abrahamsen Blomfeldt2009-04-3014-26/+262
|/ | | | | | and then fire. One of them has an error, which causes it to enter its error state. The errorstate example has been changed to handle this by disabling the tank. The rest of the tanks will keep working.
* Merge branch 'kinetic-animations' into kinetic-statemachineKent Hansen2009-04-291-3/+3
|\
| * remove multiplication by 1 in easing curvesThierry Bastian2009-04-291-3/+3
| |
* | kill QStateMachine::animationsFinished(), introduce QState::polished()Kent Hansen2009-04-297-115/+317
| |
* | Compile against new QState::ChildMode API.Eskil Abrahamsen Blomfeldt2009-04-291-1/+1
| |
* | Kill gameOver signal as it was only used when you clicked the stop actionEskil Abrahamsen Blomfeldt2009-04-292-9/+6
| |
* | SCXML defines an atomic state as a <state> with no children or <final>. However,Eskil Abrahamsen Blomfeldt2009-04-292-3/+27
|/ | | | | | | | | | in SCXML it makes no sense for a <parallel> tag to be atomic, hence have no children, whereas in a dynamic state machine you might set an atomic state as parallel because this should govern the behavior if the state gets children later. We decided that the most intuitive definition is that a state is atomic if it has no children, regardless of whether it has the parallel child mode. With the old definition, transitions from empty parallel states will never be taken, as illustrated by the test.
* Merge branch 'kinetic-animations' into kinetic-statemachineKent Hansen2009-04-2924-176/+406
|\ | | | | | | | | Conflicts: examples/animation/sub-attaq/states.cpp
| * compile fix for the benchmarkThierry Bastian2009-04-293-59/+36
| | | | | | | | | | QItemAnimation has disappeared and it's now better to start the animation instead of pausing it
| * Build fix for mingwThierry Bastian2009-04-2718-54/+52
| |
| * Add an OSD to display game progress in the sceneAlexis Menard2009-04-2411-65/+320
| |
* | update stale docKent Hansen2009-04-291-1/+1
| |
* | kill QStateMachine::states() and QState::transitions()Kent Hansen2009-04-295-37/+16
| | | | | | | | Result of API review. Don't need them (for now).
* | docKent Hansen2009-04-291-1/+7
| |
* | kill source/target-specific animationsKent Hansen2009-04-293-154/+85
| | | | | | | | | | Result of API review. We don't have use cases for them yet. We can add them back if valid use cases do turn up.
* | kill dead function declarationKent Hansen2009-04-291-1/+0
| |
* | rename QBoundEvent to QWrappedEvent and make it publicKent Hansen2009-04-2910-76/+99
| | | | | | | | Result of API review.
* | add missing QT_END_HEADERKent Hansen2009-04-291-0/+2
| |
* | replace QState::Type with QState::childMode propertyKent Hansen2009-04-298-29/+70
| | | | | | | | Result of API review.
* | Add test that property assignments set on parallel states are actuallyEskil Abrahamsen Blomfeldt2009-04-291-3/+40
| | | | | | | | applied after entering.
* | Adapt to recent API changes and bug fixes.Eskil Abrahamsen Blomfeldt2009-04-291-2/+6
| |
* | Remove QEXPECT_FAIL because e06c2e15 fixes this test as well.Eskil Abrahamsen Blomfeldt2009-04-291-1/+0
| |
* | Compile against new QHistoryState API.Eskil Abrahamsen Blomfeldt2009-04-291-2/+2
| |
* | Merge the two queries for entry states to support having history states asEskil Abrahamsen Blomfeldt2009-04-292-71/+113
| | | | | | | | the initial state. Done by No'am, integrated by me.
* | rename a few properties and methodsKent Hansen2009-04-297-21/+21
| | | | | | | | Result of API review.
* | modifiers --> modifiersMaskKent Hansen2009-04-299-33/+98
| | | | | | | | | | | | Result of API review. A == comparison of the modifiers is not useful. The common case is you want to test if one or more modifiers are set, i.e. a mask check.
* | compileKent Hansen2009-04-291-0/+1
| |
* | kill unnecessary qmake variable modsKent Hansen2009-04-291-3/+0
| |
* | make history state constructibleKent Hansen2009-04-299-59/+78
| | | | | | | | | | | | | | | | | | | | | | Decided in API review. The intention of QHistoryState not being constructible was so that people wouldn't subclass it and reimplement onEntry()/onExit(), thinking that those functions would actually get called (which they won't). However, we recently added the entered() signal to QAbstractState, so people are going to connect to it and ask why they never get the signal for a QHistoryState. We might as well make QHistoryState constructible and just document that it doesn't make sense to subclass it.