protected virtual void ExitPlacing(int numPlaced, AbilityType aType){ AbilityObjectPlacedMessage objMess = new AbilityObjectPlacedMessage (numPlaced, aType); MessageCenter.Instance.Broadcast (objMess); AbilityStatusChangedMessage abMess = new AbilityStatusChangedMessage (false); MessageCenter.Instance.Broadcast (abMess); Destroy (this.gameObject); }
protected virtual void ExitPlacing(int numPlaced, AbilityType aType) { AbilityObjectPlacedMessage objMess = new AbilityObjectPlacedMessage(numPlaced, aType); MessageCenter.Instance.Broadcast(objMess); AbilityStatusChangedMessage abMess = new AbilityStatusChangedMessage(false); MessageCenter.Instance.Broadcast(abMess); Destroy(this.gameObject); }
/** * AbilityStatusChanged Handler **/ protected void HandleAbilityStatusChanged(Message message) { AbilityStatusChangedMessage mess = message as AbilityStatusChangedMessage; if (mess.abilityInUseStatus) { canMove = false; } else { canMove = true; } }
/** * AbilityStatusChanged Handler **/ void HandleAbilityStatusChanged(Message message) { AbilityStatusChangedMessage mess = message as AbilityStatusChangedMessage; if (mess.abilityInUseStatus) { abilityUsed = true; } else { abilityUsed = false; } }
// Use this for initialization new void Start () { base.Start (); prefabPath = "Prefabs/TireSwingRanged"; distanceCovered = 0; reached = false; npcCaught = new ArrayList(); // broadcast this is in use AbilityStatusChangedMessage message = new AbilityStatusChangedMessage(true); MessageCenter.Instance.Broadcast(message); }
/** * AbilityStatusChanged Handler **/ protected void HandleAbilityStatusChanged(Message message) { AbilityStatusChangedMessage mess = message as AbilityStatusChangedMessage; if (mess.abilityInUseStatus) { canMove = false; transform.rigidbody2D.velocity = new Vector2(0, 0); } else { canMove = true; } }
// Use this for initialization new void Start() { base.Start(); prefabPath = "Prefabs/TireSwingRanged"; distanceCovered = 0; reached = false; npcCaught = new ArrayList(); // broadcast this is in use AbilityStatusChangedMessage message = new AbilityStatusChangedMessage(true); MessageCenter.Instance.Broadcast(message); }
// Update is called once per frame protected override void GameUpdate() { // if tire swing hasn't reached full length if (distanceCovered < distance && !reached) { distanceCovered += speed; transform.position += direction * speed; } // at full length else if (distanceCovered >= distance && !reached) { reached = true; } // coming back to player else if (distanceCovered > 0 && reached) { distanceCovered -= speed; transform.position -= direction * speed; } // tire swing end else if (distanceCovered <= 0 && reached) { foreach (GameObject npc in npcCaught) { npc.GetComponent <CircleCollider2D>().enabled = true; npc.GetComponent <SpriteRenderer>().enabled = true; npc.GetComponent <BoxCollider2D>().enabled = true; // add in player having npcs } // broadcast ability no longer in use AbilityStatusChangedMessage message = new AbilityStatusChangedMessage(false); MessageCenter.Instance.Broadcast(message); // destroy tire swing Destroy(this.gameObject); } if (npcCaught.Count > 0) { // have NPC be caught in the tire swing foreach (GameObject npc in npcCaught) { npc.transform.position = transform.position; } } }
// Update is called once per frame protected override void GameUpdate () { // if tire swing hasn't reached full length if( distanceCovered < distance && !reached) { distanceCovered += speed; transform.position += direction*speed; } // at full length else if( distanceCovered >= distance && !reached) { reached = true; } // coming back to player else if( distanceCovered > 0 && reached) { distanceCovered -= speed; transform.position -= direction*speed; } // tire swing end else if( distanceCovered <= 0 && reached ) { foreach( GameObject npc in npcCaught ) { npc.GetComponent<CircleCollider2D>().enabled = true; npc.GetComponent<SpriteRenderer>().enabled = true; npc.GetComponent<BoxCollider2D>().enabled = true; // add in player having npcs } // broadcast ability no longer in use AbilityStatusChangedMessage message = new AbilityStatusChangedMessage(false); MessageCenter.Instance.Broadcast(message); // destroy tire swing Destroy ( this.gameObject ); } if( npcCaught.Count > 0 ) { // have NPC be caught in the tire swing foreach( GameObject npc in npcCaught ) { npc.transform.position = transform.position; } } }
void HandleInput(){ /*if (((Input.GetKeyDown(KeyCode.D) || Input.GetButtonDown("X"))) && GameObject.FindGameObjectWithTag("Player").GetComponent<TreeController>().state != Tree.State.Eating) { if(luresLeft > 0 && !abilityInUse){ AbilityStatusChangedMessage message = new AbilityStatusChangedMessage(true); MessageCenter.Instance.Broadcast(message); GameObject obj = (GameObject)Resources.Load("Prefabs/Abilities/LurePlacer"); LurePlacer lp = obj.GetComponent<LurePlacer>(); lp.luresAllowed = luresLeft; GameObject.Instantiate(lp, transform.position, Quaternion.identity); abilityInUse = true; } }*/ if (Input.GetButtonDown ("B") && !abilityInUse){// && (GameObject.FindGameObjectWithTag ("Player").GetComponent<TreeController> ().state != Tree.State.Eating && GameObject.FindGameObjectWithTag ("Player").GetComponent<TreeController> ().state != Tree.State.AxeManMinigame)) { AbilityStatusChangedMessage message = new AbilityStatusChangedMessage(true); MessageCenter.Instance.Broadcast(message); Instantiate(Resources.Load("Particles/soulsmoke"), transform.position, Quaternion.identity); abilityInUse = true; } }
protected virtual void HandleInput(){ /*if (((Input.GetKeyDown(KeyCode.D) || Input.GetButtonDown("X"))) && GameObject.FindGameObjectWithTag("Player").GetComponent<TreeController>().state != Tree.State.Eating) { if(luresLeft > 0 && !abilityInUse){ AbilityStatusChangedMessage message = new AbilityStatusChangedMessage(true); MessageCenter.Instance.Broadcast(message); GameObjec obj = (GameObject)Resources.Load("Prefabs/Abilities/LurePlacer"); LurePlacer lp = obj.GetComponent<LurePlacer>(); lp.luresAllowed = luresLeft; GameObject.Instantiate(lp, transform.position, Quaternion.identity); abilityInUse = true; } }*/ if ((Input.GetButtonDown("A") || Input.GetButtonDown("B")) && Active && GlobalGameStateManager.PosessionState == PosessionState.EXORCISABLE) {// && (GameObject.FindGameObjectWithTag ("Player").GetComponent<TreeController> ().state != Tree.State.Eating && GameObject.FindGameObjectWithTag ("Player").GetComponent<TreeController> ().state != Tree.State.AxeManMinigame)) { AbilityStatusChangedMessage message = new AbilityStatusChangedMessage(true); MessageCenter.Instance.Broadcast(message); exorcise(); } }
void HandleInput() { /*if (((Input.GetKeyDown(KeyCode.D) || Input.GetButtonDown("X"))) && GameObject.FindGameObjectWithTag("Player").GetComponent<TreeController>().state != Tree.State.Eating) * { * if(luresLeft > 0 && !abilityInUse){ * AbilityStatusChangedMessage message = new AbilityStatusChangedMessage(true); * MessageCenter.Instance.Broadcast(message); * GameObject obj = (GameObject)Resources.Load("Prefabs/Abilities/LurePlacer"); * LurePlacer lp = obj.GetComponent<LurePlacer>(); * lp.luresAllowed = luresLeft; * GameObject.Instantiate(lp, transform.position, Quaternion.identity); * abilityInUse = true; * } * }*/ if (Input.GetButtonDown("B") && !abilityInUse && (GameObject.FindGameObjectWithTag("Player").GetComponent <TreeController> ().state != Tree.State.Eating && GameObject.FindGameObjectWithTag("Player").GetComponent <TreeController> ().state != Tree.State.AxeManMinigame)) { AbilityStatusChangedMessage message = new AbilityStatusChangedMessage(true); MessageCenter.Instance.Broadcast(message); Instantiate(Resources.Load("Particles/soulsmoke"), transform.position, Quaternion.identity); abilityInUse = true; } }
/** * AbilityStatusChanged Handler **/ protected void HandleAbilityStatusChanged(Message message) { AbilityStatusChangedMessage mess = message as AbilityStatusChangedMessage; abilityUsed = mess.abilityInUseStatus; }