public override TimedMethod[] BasicAttack() { System.Random rng = new System.Random(); TimedMethod[] stunPart; if (rng.Next(10) < 5 && Attacks.EvasionCheck(Party.GetEnemy(), GetAccuracy())) { stunPart = Party.GetEnemy().status.Stun(2); } else { stunPart = new TimedMethod[] { new TimedMethod("Null"), new TimedMethod("Null") }; } Democracy castPassive = (Democracy)passive; castPassive.attacked = true; TimedMethod[] attackPart; Attacks.SetAudio("Blunt Hit", 10); if (Party.BagContains(new Metronome())) { attackPart = Attacks.Attack(this, Party.GetEnemy(), strength + 3, strength + 3, GetAccuracy(), true, true, false); } else { attackPart = Attacks.Attack(this, Party.GetEnemy()); } TimedMethod[] moves = new TimedMethod[attackPart.Length + 3]; moves[0] = new TimedMethod(0, "Audio", new object[] { "Big Swing" }); attackPart.CopyTo(moves, 1); moves[moves.Length - 2] = stunPart[0]; moves[moves.Length - 1] = stunPart[1]; return(moves); }
public override TimedMethod[] Use() { Character self = Party.GetPlayer(); self.GainPower(1); self.GainDefense(1); self.GainCharge(2); self.GainGuard(2); Democracy castPassive = (Democracy)self.GetPassive(); if (castPassive.promise == 0) { castPassive.promise = 2; } return(new TimedMethod[] { new TimedMethod(0, "Audio", new object[] { "Recruit" }), new TimedMethod(60, "Log", new object[] { self.ToString() + " promised action" }), new TimedMethod(0, "CharLogSprite", new object[] { "1", Party.playerSlot - 1, "power", true }), new TimedMethod(0, "CharLogSprite", new object[] { "1", Party.playerSlot - 1, "defense", true }), new TimedMethod(0, "CharLogSprite", new object[] { "2", Party.playerSlot - 1, "charge", true }), new TimedMethod(0, "CharLogSprite", new object[] { "2", Party.playerSlot - 1, "guard", true }) }); }
public override TimedMethod[] AI() { System.Random rng = new System.Random(); int num = rng.Next(10); Democracy castPassive = (Democracy)passive; if (num < 4 || castPassive.promise == 1) { castPassive.promise = 0; return(Attack()); } else if (num < 8) { castPassive.promise = 2; return(Campaign()); } else { return(Debate()); } }
public PoliticalScientist() { health = 21; maxHP = 21; strength = 3; power = 0; charge = 0; defense = 0; guard = 0; baseAccuracy = 13; accuracy = 13; dexterity = 4; evasion = 0; type = "Political Science Major"; passive = new Democracy(this); quirk = Quirk.GetQuirk(this); special = new Campaign(); special2 = new Filibuster(); player = false; champion = false; recruitable = true; CreateDrops(); attackEffect = "chance to stun"; }