BehaviorTrigger BehaviorSetter.ReadyBehavior(BehaviorExpression bExpr, BehaviorReadySupport support) { var unityBRSupport = new BridgeUnityBReadySupport { parent = this, clientListener = support, bExpr = bExpr }; var uniTrigger = unityBehaverInternal.ReadyBehavior(bExpr, unityBRSupport); if (uniTrigger != null) { var bridgeTrigger = new BridgeBTriggerFromUnity { parent = this, bExpr = bExpr, spaceDistributer = this.parent.defaultSpace.spaceDistributer, unityBTrigger = uniTrigger }; return(bridgeTrigger); } var eqLis = new UseOnEquip_EquipListener { canEquip = true, customBehaverInstance = myCustomizable, bExpr = bExpr, unityBRSupport = unityBRSupport }; foreach (var equipper in parent.assetMed.assetMed.GetImplementedAssets <MonoBBehaverEquipper>()) { equipper.behaverEquipper.EquipBehaverByBehavior(bExpr, eqLis); } if (!eqLis.canEquip) { var seekEqLis = new SeekEQLis { parent = this, bExpr = bExpr }; parent.assetMed.assetMed.SeekAsset(bExpr.asGBlock, seekEqLis); } return(null); }
BehaviorTrigger BehaviorSetter.ReadyBehavior(BehaviorExpression bExpr, BehaviorReadySupport reqListener) { if (bExpr.subject.unit != null) { var bDef = FindDef(bExpr.subject.unit.word); if (bDef != null) { if (string.Compare(bExpr.verb.word, "begin", true) == 0) { return(NewBeginTrigger(bDef)); } if (string.Compare(bExpr.verb.word, "end", false) == 0) { bDef.doEndExplicit = true; return(new NamedProcessEndTRigger { behaviorDef = bDef }); } } } return(null); }
BehaviorCheckTrigger BehaviorChecker.ReadyCheckBehavior(BehaviorExpression bExpr, BehaviorReadySupport chkReqListener) { return(null); }
BehaviorCheckTrigger BehaviorChecker.ReadyCheckBehavior(BehaviorExpression bExpr, BehaviorReadySupport chkReqListener) { if (string.Compare(bExpr.verb.word, "pass", true) == 0) { var newTrigger = new CountDownCheckTrigger { triggerTime = TimeExpresssionToFloatSec(bExpr.subject) }; triggers.Add(newTrigger); return(newTrigger); } return(null); }
public BehaviorTrigger ReadyBehavior(BehaviorExpression bExp, BehaviorReadySupport bReqLis) { return(null); }