private static Wait _getOrCacheFSMWait(string stateName, string fsmName, GameObject go, int index) { Wait outVal = null; PlayMakerFSM myFsm = _getOrCacheFSM(fsmName, go); if (index < 0) { FsmState myState; if (myFsm != null) { myState = myFsm.GetState(stateName); } else { return(null); } if (myState != null) { outVal = (Wait)myState.Actions.FirstOrDefault(wait => wait is Wait); } return(outVal); } else { return(FsmUtil.GetAction <Wait>(myFsm, stateName, index)); } }
private static SetVelocity2d _getOrCacheFSMSetVelocity2D(string stateName, string fsmName, GameObject go, int index) { SetVelocity2d outVal = null; PlayMakerFSM myFsm = _getOrCacheFSM(fsmName, go); if (index < 0) { FsmState myState; if (myFsm != null) { myState = myFsm.GetState(stateName); } else { return(null); } if (myState != null) { outVal = (SetVelocity2d)myState.Actions.FirstOrDefault(setVelo => setVelo is SetVelocity2d); } return(outVal); } else { return(FsmUtil.GetAction <SetVelocity2d>(myFsm, stateName, index)); } }
public void Spawn() { if (shiny == null) { if (id == 0) { shiny = Instantiate(BossRush.shinySlot1); } if (id == 1) { shiny = Instantiate(BossRush.shinySlot2); } if (id == 2) { shiny = Instantiate(BossRush.shinySlot3); } } if (position.x < -900) { shiny.transform.position = new Vector2((BossRush.hc.transform.position.x + (id == 1 ? -2.75f : 0) + (id == 2 ? 2.75f : 0)), BossRush.hc.transform.position.y); } else { shiny.transform.position = position; } PlayMakerFSM shinyFSM = FSMUtility.LocateFSM(shiny, "Shiny Control"); shinyFSM.FsmVariables.GetFsmInt("Trinket Num").Value = id + 1; FsmUtil.ChangeTransition(shinyFSM, "PD Bool?", "COLLECTED", "Fling?"); shiny.name = "ITEM_" + id; }