performBehavior method
Implementation
void performBehavior(BehaviorEnum behavior) {
if (widget.character is DefaultCharacter) {
setState(() {
_activeBehavior = behavior;
switch (behavior) {
case BehaviorEnum.movetoright:
moveLeftToRight();
break;
case BehaviorEnum.movetoleft:
moveRightToLeft();
break;
case BehaviorEnum.wave:
_performWave();
break;
case BehaviorEnum.jump:
_performJump();
break;
case BehaviorEnum.run:
case BehaviorEnum.walk:
case BehaviorEnum.speak:
case BehaviorEnum.think:
case BehaviorEnum.listen:
case BehaviorEnum.sleep:
case BehaviorEnum.cry:
case BehaviorEnum.laugh:
case BehaviorEnum.scared:
case BehaviorEnum.annoyed:
case BehaviorEnum.love:
case BehaviorEnum.blush:
case BehaviorEnum.wink:
// For these behaviors, we primarily rely on the asset change
// handled in _buildCharacter if an asset exists.
// We can also trigger a state change if appropriate.
_syncStateWithBehavior(behavior);
break;
}
});
}
}