Example #1
0
 protected Node TellerPutHidden(SmartCharacter user)
 {
     return new Sequence(
         user.Node_GoTo(TellerStandPoint.position),
         user.Node_OrientTowards(CustomerStandPoint.position),
         user.ST_Pickup(HoldPropIntermediate, InteractionIntermediateTeller),
         new LeafInvoke(() => user.GetRightProp().FadeOut()),
         user.ST_Put(HoldPropStorage, InteractionStorage));
 }
Example #2
0
 protected Node CustomerPutMoney(SmartCharacter user)
 {
     return new Sequence(
         this.Node_Require(StateName.RoleTeller),
         user.Node_Require(StateName.RoleActor, StateName.IsStanding, ~StateName.RightHandOccupied, ~StateName.IsIncapacitated, StateName.HoldingWallet),
         user.ST_TakeWalletFromPocket(),
         user.ST_Put(HoldPropIntermediate, InteractionIntermediateCustomer),
         user.Node_Set(~StateName.HoldingWallet),
         this.Node_Set(StateName.HoldingWallet));
 }
Example #3
0
 protected Node CustomerPutHidden(SmartCharacter user)
 {
     return new Sequence(
         new LeafInvoke(() => user.HoldPropRightHand.Attach(user.HoldPropHidden.Release())),
         new LeafInvoke(() => user.GetRightProp().FadeIn()),
         user.ST_Put(HoldPropIntermediate, InteractionIntermediateCustomer));
 }
Example #4
0
 protected Node TellerPutMoney(SmartCharacter user)
 {
     return new Sequence(
         this.Node_Require(StateName.RoleTeller, StateName.HoldingWallet),
         user.Node_Require(StateName.RoleTeller, StateName.IsStanding, ~StateName.RightHandOccupied, ~StateName.IsIncapacitated),
         this.Node_Require(user.Id, RelationName.IsAdjacentTo),
         user.Node_GoTo(TellerStandPoint.position),
         user.Node_OrientTowards(CustomerStandPoint.position),
         user.ST_Pickup(HoldPropIntermediate, InteractionIntermediateTeller),
         user.ST_Put(HoldPropStorage, InteractionStorage),
         this.Node_Set(~StateName.HoldingWallet));
 }