public static void ShowTacticTarget(List <Location> validTargets, int caller, TacticTrigger trigger) { actor = "tactic"; targetLocs = validTargets; tacticCaller = caller; tacticTrigger = trigger; DrawTargets(); }
public void Clear() { tactic = null; trigger = null; nameText.text = "Tactic"; oreCostText.text = "0"; goldCostText.text = "0"; image.sprite = null; }
public void SetAttributes(TacticAttributes attributes, int ownerID = 0, bool original = true) { tacticAttributes = attributes; if (ownerID == 0) { ownerID = Login.playerID; } tactic = new Tactic(attributes.Name, attributes.oreCost, attributes.goldCost, ownerID, original); if (tacticAttributes.trigger != null) { trigger = Instantiate(tacticAttributes.trigger); } if (tacticAttributes.trigger != null) { trigger.tactic = tactic; } nameText.text = attributes.Name; SetOreCost(attributes.oreCost); SetGoldCost(attributes.goldCost); image.sprite = attributes.image; }
public void UseTactic(int caller) { if (MovementController.selected != null) { MovementController.PutDownPiece(); } if (ActivateAbility.activated) { ActivateAbility.DeactivateButton(); } if (OnEnterGame.current_tactic != -1 && targets.Count != 0) { Resume(); } else { TacticTrigger trigger = tacticObj.GetComponent <TacticInfo>().trigger; if (!trigger.needsTarget && Time.time - prevClick < doubleClickInterval) { if (!GameController.ChangeOre(-trigger.tactic.oreCost) || !GameController.ChangeCoin(-trigger.tactic.goldCost)) { return; } trigger.Activate(); GameController.RemoveTactic(trigger.tactic, true); } else { OnEnterGame.current_tactic = caller; button.GetComponent <Image>().sprite = button.spriteState.highlightedSprite; targets = trigger.ValidTargets(); if (targets.Count != 0) { ActivateAbility.ShowTacticTarget(targets, caller, trigger); } } } infoCard.SetActive(false); prevClick = Time.time; }