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)); }
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)); }
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)); }
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)); }