Skip to content
Snippets Groups Projects
Commit 89a45bec authored by tempiaa's avatar tempiaa
Browse files

New random variables behavior

parent 76627949
No related branches found
No related tags found
1 merge request!335New random behavior
......@@ -428,36 +428,27 @@ public class AvatarStateMachine extends AvatarElement {
toRemove.add(elt);
// Creating elements
AvatarTransition at1 = new AvatarTransition(_block, "Transition1ForRandom__ " + elt.getName() + "__" + id, elt.getReferenceObject());
at1.addAction(random.getVariable() + "=" + random.getMinValue());
AvatarState randomState = new AvatarState("StateForRandom__" + elt.getName() + "__" + id, elt.getReferenceObject());
AvatarState beforeRandom = new AvatarState("StateBeforeRandom__" + elt.getName() + "__" + id, elt.getReferenceObject());
AvatarTransition at2 = new AvatarTransition(_block, "Transition2ForRandom__" + elt.getName() + "__" + id, elt.getReferenceObject());
at2.setGuard("[" + random.getVariable() + " < " + random.getMaxValue() + "]");
at2.addAction(random.getVariable() + "=" + random.getVariable() + " + 1");
AvatarTransition at3 = new AvatarTransition(_block, "Transition3ForRandom__ " + elt.getName() + "__" + id, elt.getReferenceObject());
AvatarState afterRandom = new AvatarState("StateAfterRandom__" + elt.getName() + "__" + id, elt.getReferenceObject());
AvatarState randomState = new AvatarState("StateForRandom__" + elt.getName() + "__" + id, elt.getReferenceObject());
for (int i = Integer.parseInt(random.getMinValue()); i <= Integer.parseInt(random.getMaxValue()); i++) {
AvatarTransition at1 = new AvatarTransition(_block, "TransitionForRandom__" + random.getVariable() + "=" + i + "__" + elt.getName() + "__" + id, elt.getReferenceObject());
at1.addAction(random.getVariable() + "=" + i);
toAdd.add(at1);
beforeRandom.addNext(at1);
at1.addNext(randomState);
}
// Adding elements
toAdd.add(at1);
toAdd.add(randomState);
toAdd.add(beforeRandom);
toAdd.add(at2);
toAdd.add(at3);
toAdd.add(afterRandom);
toAdd.add(randomState);
// Linking elements
if (previous != null) {
previous.removeAllNexts();
previous.addNext(beforeRandom);
}
beforeRandom.addNext(at1);
at1.addNext(randomState);
randomState.addNext(at2);
randomState.addNext(at3);
at2.addNext(randomState);
at3.addNext(afterRandom);
afterRandom.addNext(next);
randomState.addNext(next);
id++;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment