Beispiel #1
0
    public override TimedMethod[] Lecture()
    {
        TimedMethod[] sleepPart;
        TimedMethod[] totalSleep = new TimedMethod[] { new TimedMethod("Null"), new TimedMethod("Null"), new TimedMethod("Null"),
                                                       new TimedMethod("Null"), new TimedMethod("Null"), new TimedMethod("Null"), new TimedMethod("Null"), new TimedMethod("Null"),
                                                       new TimedMethod("Null"), new TimedMethod("Null"), new TimedMethod("Null"), new TimedMethod("Null"), new TimedMethod("Null"),
                                                       new TimedMethod("Null"), new TimedMethod("Null"), new TimedMethod("Null") };
        int index = 0;

        foreach (Character c in Party.members)
        {
            if (c != null && c.GetAlive() && Attacks.EvasionCycle(this, c))
            {
                sleepPart = c.status.Sleep();
                Status.NullifyAttack(c); Status.NullifyDefense(c);
                totalSleep[index + 2] = new TimedMethod(0, "CharLogSprite", new object[] { "atk reset", c.partyIndex, "nullAttack", true });
                totalSleep[index + 3] = new TimedMethod(0, "CharLogSprite", new object[] { "def reset", c.partyIndex, "nullDefense", true });
            }
            else
            {
                sleepPart = new TimedMethod[] { new TimedMethod("Null"), new TimedMethod("Null") };
            }
            totalSleep[index]     = sleepPart[0];
            totalSleep[index + 1] = sleepPart[1];
            index += 4;
        }
        return(new TimedMethod[] { new TimedMethod(0, "Audio", new object[] { "Filibuster" }),
                                   new TimedMethod(60, "Log", new object[] { ToString() + " lectured" }), totalSleep[0], totalSleep[1], totalSleep[2], totalSleep[3],
                                   totalSleep[4], totalSleep[5], totalSleep[6], totalSleep[7], totalSleep[8], totalSleep[9], totalSleep[10], totalSleep[11],
                                   totalSleep[12], totalSleep[13], totalSleep[14], totalSleep[15] });
    }
    public virtual TimedMethod[] Lecture()
    {
        TimedMethod[] totalSleep = new TimedMethod[] { new TimedMethod("Null"), new TimedMethod("Null"), new TimedMethod("Null"),
                                                       new TimedMethod("Null"), new TimedMethod("Null"), new TimedMethod("Null"), new TimedMethod("Null"), new TimedMethod("Null") };
        int index = 0;

        TimedMethod[] sleepPart;
        foreach (Character c in Party.members)
        {
            if (c != null && c.GetAlive() && Attacks.EvasionCycle(this, c))
            {
                sleepPart = c.status.Sleep();
            }
            else
            {
                sleepPart = new TimedMethod[] { new TimedMethod("Null"), new TimedMethod("Null") };
            }
            totalSleep[index]     = sleepPart[0];
            totalSleep[index + 1] = sleepPart[1];
            index += 2;
        }
        return(new TimedMethod[] { new TimedMethod(0, "Audio", new object[] { "Filibuster" }),
                                   new TimedMethod(60, "Log", new object[] { ToString() + " lectured" }), totalSleep[0], totalSleep[1], totalSleep[2], totalSleep[3],
                                   totalSleep[4], totalSleep[5], totalSleep[6], totalSleep[7] });
    }
    public TimedMethod[] Filibuster()
    {
        TimedMethod[] totalSleep = new TimedMethod[] { new TimedMethod("Null"), new TimedMethod("Null"), new TimedMethod("Null"),
                                                       new TimedMethod("Null"), new TimedMethod("Null"), new TimedMethod("Null"), new TimedMethod("Null"), new TimedMethod("Null") };
        int index = 0;

        TimedMethod[] sleepPart;
        foreach (Character c in Party.members)
        {
            if (c != null && c.GetAlive() && Attacks.EvasionCycle(this, c))
            {
                sleepPart = c.status.Sleep();
            }
            else
            {
                sleepPart = new TimedMethod[] { new TimedMethod(0, "CharLog", new object[] { "miss", c.partyIndex, true }), new TimedMethod("Null") };
            }
            totalSleep[index]     = sleepPart[0];
            totalSleep[index + 1] = sleepPart[1];
            index += 2;
        }
        return(new TimedMethod[] { new TimedMethod(0, "Audio", new object[] { "Filibuster" }),
                                   new TimedMethod(60, "Log", new object[] { "The Politician filibustered" }), totalSleep[0], totalSleep[1], totalSleep[2], totalSleep[3],
                                   totalSleep[4], totalSleep[5], totalSleep[6], totalSleep[7] });
    }
Beispiel #4
0
 public override TimedMethod[] Use()
 {
     TimedMethod[] sleepPart = new TimedMethod[] { new TimedMethod(60, "Log", new object[] { "Miss" }), new TimedMethod("Null") };
     if (Attacks.EvasionCycle(Party.GetPlayer().GetAccuracy() * 2, Party.GetEnemy()))
     {
         sleepPart = Party.GetEnemy().status.Sleep();
     }
     return(new TimedMethod[] { new TimedMethod(0, "Audio", new object[] { "Hypnotize" }),
                                sleepPart[0], sleepPart[1] });
 }
Beispiel #5
0
 public TimedMethod[] Poison()
 {
     TimedMethod[] poisonPart = new TimedMethod[] { new TimedMethod(60, "Log", new object[] { "miss" }), new TimedMethod("Null") };
     if (Attacks.EvasionCycle(this, Party.GetPlayer()))
     {
         poisonPart = Party.GetPlayer().status.Poison(2);
     }
     return(new TimedMethod[] { new TimedMethod(0, "Audio", new object[] { "Fumes" }),
                                new TimedMethod(60, "Log", new object[] { "The Megalomaniac sprayed poison fumes" }), poisonPart[0], poisonPart[1] });
 }
 public TimedMethod[] Grade()
 {
     if (Attacks.EvasionCycle(this, Party.GetPlayer()))
     {
         Party.UseSP(3);
         return(new TimedMethod[] { new TimedMethod(0, "Audio", new object[] { "Poison" }),
                                    new TimedMethod(60, "Log", new object[] { ToString() + " returned grades. -3 SP" }) });
     }
     return(new TimedMethod[] { new TimedMethod(0, "Audio", new object[] { "Poison" }),
                                new TimedMethod(60, "Log", new object[] { ToString() + " returned grades, but " + Party.GetPlayer().ToString() + " didn't care" }) });
 }
Beispiel #7
0
 public override TimedMethod[] UseSupport(int i)
 {
     TimedMethod[] apathyPart = new TimedMethod[] { new TimedMethod(60, "Log", new object[] { "miss" }), new TimedMethod("Null") };
     if (Attacks.EvasionCycle(Party.members[i], Party.GetEnemy()))
     {
         apathyPart = Party.GetEnemy().status.CauseApathy(3);
     }
     return(new TimedMethod[] { new TimedMethod(0, "Audio", new object[] { "Filibuster" }), new TimedMethod(60, "Log", new object[] {
             Party.members[i].ToString() + " recited so much Pi it could lower self-esteem"
         }), apathyPart[0], apathyPart[1] });
 }
 public TimedMethod[] Disrupt()
 {
     if (Attacks.EvasionCycle(this, Party.GetPlayer()))
     {
         TimedMethod[] stunPart = Party.GetPlayer().status.Stun(3);
         return(new TimedMethod[] { new TimedMethod(60, "Log", new object[] { ToString() + " fired a disruptive wave" }),
                                    new TimedMethod(0, "Audio", new object[] { "Laser Shot" }), new TimedMethod(0, "Audio", new object[] { "Tazer" }),
                                    stunPart[0], stunPart[1] });
     }
     return(new TimedMethod[] { new TimedMethod(0, "Audio", new object[] { "Laser Shot" }),
                                new TimedMethod(60, "Log", new object[] { ToString() + " missed a disruptive wave" }) });
 }
Beispiel #9
0
 public override TimedMethod[] Use()
 {
     if (Attacks.EvasionCycle(Party.GetPlayer(), Party.GetEnemy()))
     {
         TimedMethod[] goopPart = Party.GetEnemy().status.Goop();
         return(new TimedMethod[] { new TimedMethod(0, "Audio", new object[] { "Slime" }), goopPart[0], goopPart[1] });
     }
     else
     {
         return(new TimedMethod[] { new TimedMethod(0, "Audio", new object[] { "Slime" }), new TimedMethod(60, "Log", new object[] { "miss" }) });
     }
 }
 public override TimedMethod[] Use()
 {
     if (Attacks.EvasionCycle(Party.GetPlayer(), Party.GetEnemy()))
     {
         string message = Party.GetEnemy() + " lost attack";
         Status.NullifyAttack(Party.GetEnemy());
         return(new TimedMethod[] { new TimedMethod(0, "Audio", new object[] { "Trumpet" }),
                                    new TimedMethod(60, "Log", new object[] { Party.GetEnemy() + " lost attack" }),
                                    new TimedMethod(0, "CharLogSprite", new object[] { "atk reset", Party.enemySlot - 1, "nullAttack", false }) });
     }
     return(new TimedMethod[] { new TimedMethod(0, "Audio", new object[] { "Trumpet" }), new TimedMethod(60, "Log", new object[] { "miss" }) });
 }
Beispiel #11
0
    public TimedMethod[] Meal(string food)
    {
        string message = "";

        TimedMethod[] statusPart = new TimedMethod[] { new TimedMethod(60, "Log", new object[] { "Miss" }), new TimedMethod("Null") };
        TimedMethod   audioPart  = new TimedMethod("Null");

        switch (food)
        {
        case "eat": message     = ToString() + " ate some food";
            Heal(8); statusPart = new TimedMethod[] { new TimedMethod(0, "CharLogSprite", new object[] { "8", Party.enemySlot - 1, "healing", false }),
                                                      new TimedMethod("Null") };
            audioPart = new TimedMethod(0, "Audio", new object[] { "Eat" });
            break;

        case "poison": message = ToString() + " chucked raw chicken";
            if (Attacks.EvasionCycle(this, Party.GetPlayer()))
            {
                statusPart = Party.GetPlayer().status.Poison(1);
            }
            audioPart = new TimedMethod(0, "Audio", new object[] { "Missile" });
            break;

        case "attack": message = ToString() + " chucked bread";
            if (Attacks.EvasionCycle(this, Party.GetPlayer()))
            {
                Party.GetPlayer().GainCharge(-6);
                statusPart[0] = new TimedMethod(0, "CharLogSprite", new object[] { "-6", Party.playerSlot - 1, "charge", true });
                statusPart[1] = new TimedMethod(0, "Audio", new object[] { "Nullify" });
            }
            audioPart = new TimedMethod(0, "Audio", new object[] { "Missile" });
            break;

        case "defense": message = ToString() + " chucked jello";
            if (Attacks.EvasionCycle(this, Party.GetPlayer()))
            {
                Party.GetPlayer().GainGuard(-6);
                statusPart[0] = new TimedMethod(0, "CharLogSprite", new object[] { "-6", Party.playerSlot - 1, "guard", true });
                statusPart[1] = new TimedMethod(0, "Audio", new object[] { "Slime" });
            }
            audioPart = new TimedMethod(0, "Audio", new object[] { "Missile" });
            break;

        case "stun": message = ToString() + " chucked pepper";
            if (Attacks.EvasionCycle(this, Party.GetPlayer()))
            {
                statusPart = Party.GetPlayer().status.Stun(3);
            }
            audioPart = new TimedMethod(0, "Audio", new object[] { "Powder" });
            break;
        }
        return(new TimedMethod[] { audioPart, new TimedMethod(60, "Log", new object[] { message }), statusPart[0], statusPart[1] });
    }
Beispiel #12
0
 public TimedMethod[] Hypnotize()
 {
     if (Attacks.EvasionCycle(GetAccuracy() * 2, Party.GetPlayer()))
     {
         TimedMethod[] possessPart = Party.GetPlayer().status.Possess();
         return(new TimedMethod[] { new TimedMethod(0, "Audio", new object[] { "Possession" }),
                                    new TimedMethod(60, "Log", new object[] { "The Megalomaniac activated the evil device" }),
                                    possessPart[0], possessPart[1], new TimedMethod(0, "SwitchTo", new object[] { 1 }) });
     }
     return(new TimedMethod[] { new TimedMethod(0, "Audio", new object[] { "Possession" }),
                                new TimedMethod(60, "Log", new object[] { "The Megalomaniac activated the evil device and you dodged its nature" }) });
 }
 public TimedMethod[] Veto()
 {
     if (Attacks.EvasionCycle(this, Party.GetPlayer()))
     {
         Status.NullifyAttack(Party.GetPlayer()); Status.NullifyDefense(Party.GetPlayer());
         return(new TimedMethod[] { new TimedMethod(0, "Audio", new object[] { "Nullify" }),
                                    new TimedMethod(60, "Log", new object[] { "The Politician used the veto. Stats were countered" }),
                                    new TimedMethod(0, "CharLogSprite", new object[] { "atk reset", Party.playerSlot - 1, "nullAttack", false }),
                                    new TimedMethod(0, "CharLogSprite", new object[] { "def reset", Party.playerSlot - 1, "nullDefense", false }) });
     }
     return(new TimedMethod[] { new TimedMethod(60, "Log", new object[] { "The Politician used the veto. It failed" }) });
 }
Beispiel #14
0
 public override TimedMethod[] Use()
 {
     if (Attacks.EvasionCycle(Party.GetPlayer(), Party.GetEnemy()))
     {
         Party.GetEnemy().SetDefense(Party.GetEnemy().GetDefense() - 2);
         return(new TimedMethod[] { new TimedMethod(0, "Audio", new object[] { "Oil" }),
                                    new TimedMethod(60, "Log", new object[] { Party.GetEnemy().ToString() + " was covered in oil" }),
                                    new TimedMethod(0, "CharLogSprite", new object[] { "-2", Party.enemySlot - 1, "defense", false }) });
     }
     return(new TimedMethod[] { new TimedMethod(0, "Audio", new object[] { "Oil" }),
                                new TimedMethod(60, "Log", new object[] { Party.GetEnemy().ToString() + " was not covered in oil" }) });
 }
Beispiel #15
0
 public TimedMethod[] Contraband()
 {
     TimedMethod[] poisonPart;
     if (Attacks.EvasionCycle(this, Party.GetPlayer()))
     {
         poisonPart = Party.GetPlayer().status.Poison(3);
     }
     else
     {
         poisonPart = new TimedMethod[] { new TimedMethod("Null"), new TimedMethod("Null") };
     }
     return(new TimedMethod[] { new TimedMethod(60, "Log", new object[] { "The CEO used contraband" }), poisonPart[0], poisonPart[1] });
 }
 public TimedMethod[] Bargain()
 {
     if (Attacks.EvasionCycle(this, Party.GetPlayer()))
     {
         return(new TimedMethod[] { new TimedMethod(0, "AudioAfter", new object[] { "Steal", 20 }),
                                    new TimedMethod(60, "Log", new object[] { ToString() + " made a bargain" }), Party.StealItem()[0] });
     }
     else
     {
         return(new TimedMethod[] { new TimedMethod(0, "AudioAfter", new object[] { "Steal", 20 }),
                                    new TimedMethod(60, "Log", new object[] { ToString() + " failed to make a bargain" }) });
     }
 }
Beispiel #17
0
 public TimedMethod[] Anasthesia()
 {
     if (Attacks.EvasionCycle(this, Party.GetPlayer()))
     {
         TimedMethod[] sleepPart = Party.GetPlayer().status.Sleep();
         return(new TimedMethod[] { new TimedMethod(60, "Log", new object[] { ToString() + " injected anasthesia" }),
                                    new TimedMethod(0, "Audio", new object[] { "Clean" }), sleepPart[0], sleepPart[1] });
     }
     else
     {
         return(new TimedMethod[] { new TimedMethod(60, "Log", new object[] { ToString() + " missed anasthesia" }),
                                    new TimedMethod(0, "Audio", new object[] { "Clean" }) });
     }
 }
 public override TimedMethod[] Use()
 {
     Party.AddItem(new Flask());
     if (Attacks.EvasionCycle(Party.GetPlayer(), Party.GetEnemy()))
     {
         TimedMethod[] poisonPart = Party.GetEnemy().status.Poison(2);
         return(new TimedMethod[] { new TimedMethod(0, "Audio", new object[] { "Clean" }), new TimedMethod(0, "AudioAfter", new object[] { "Acid", 10 }),
                                    poisonPart[0], poisonPart[1] });
     }
     else
     {
         return(new TimedMethod[] { new TimedMethod(0, "Audio", new object[] { "Clean" }), new TimedMethod(60, "Log", new object[] { "miss" }) });
     }
 }
Beispiel #19
0
 public virtual TimedMethod[] TomatoSpell()
 {
     TimedMethod[] goopPart;
     if (Attacks.EvasionCycle(this, Party.GetPlayer()))
     {
         goopPart = Party.GetPlayer().status.Goop();
     }
     else
     {
         goopPart = new TimedMethod[] { new TimedMethod(60, "Log", new object[] { "It missed completely" }), new TimedMethod("Null") };
     }
     return(new TimedMethod[] { new TimedMethod(0, "Audio", new object[] { "Cheese" }),
                                new TimedMethod(60, "Log", new object[] { ToString() + " cast TOMATO SPELL!" }), goopPart[0], goopPart[1] });
 }
Beispiel #20
0
 public virtual TimedMethod[] CheeseSpell()
 {
     TimedMethod[] blindPart;
     if (Attacks.EvasionCycle(this, Party.GetPlayer()))
     {
         blindPart = Party.GetPlayer().status.Blind(6);
     }
     else
     {
         blindPart = new TimedMethod[] { new TimedMethod(60, "Log", new object[] { "It missed completely" }), new TimedMethod("Null") };
     }
     return(new TimedMethod[] { new TimedMethod(0, "Audio", new object[] { "Cheese" }),
                                new TimedMethod(60, "Log", new object[] { ToString() + " cast CHEESE SPELL!" }), blindPart[0], blindPart[1] });
 }
Beispiel #21
0
    public override TimedMethod[] Use()
    {
        TimedMethod[] nullPart = new TimedMethod[] { new TimedMethod("Null"), new TimedMethod("Null") };
        if (Attacks.EvasionCycle(Party.GetPlayer(), Party.GetEnemy()))
        {
            Status.NullifyAttack(Party.GetEnemy()); Status.NullifyDefense(Party.GetEnemy());
            nullPart[0] = new TimedMethod(0, "CharLogSprite", new object[] { "atk reset", Party.enemySlot - 1, "nullAttack", false });
            nullPart[1] = new TimedMethod(0, "CharLogSprite", new object[] { "def reset", Party.enemySlot - 1, "nullDefense", false });
        }
        string message = Party.GetPlayer().GetName() + " blasted the tuba!";

        return(new TimedMethod[] { new TimedMethod(0, "Audio", new object[] { "Trumpet" }), new TimedMethod(60, "Log", new object[] { message }),
                                   nullPart[0], nullPart[1] });
    }
 public TimedMethod[] Violin()
 {
     TimedMethod[] sleepPart;
     if (Attacks.EvasionCycle(this, Party.GetPlayer()))
     {
         sleepPart = Party.GetPlayer().status.Sleep();
     }
     else
     {
         sleepPart = new TimedMethod[] { new TimedMethod(60, "Log", new object[] { "Ineffective" }), new TimedMethod("Null") };
     }
     return(new TimedMethod[] { new TimedMethod(0, "Audio", new object[] { "Violin" }),
                                new TimedMethod(60, "Log", new object[] { ToString() + " played a slow violin piece" }), sleepPart[0], sleepPart[1] });
 }
 public TimedMethod[] Overdose()
 {
     if (Attacks.EvasionCycle(this, Party.GetPlayer()))
     {
         TimedMethod[] poisonPart = Party.GetPlayer().status.Poison(2);
         return(new TimedMethod[] { new TimedMethod(0, "Audio", new object[] { "Drink" }),
                                    new TimedMethod(60, "Log", new object[] { ToString() + " prescribed an overdose" }), poisonPart[0], poisonPart[1] });
     }
     else
     {
         return(new TimedMethod[] { new TimedMethod(0, "Audio", new object[] { "Glass Break" }),
                                    new TimedMethod(60, "Log", new object[] { ToString() + " prescribed an overdose...but the handwriting was too poor" }) });
     }
 }
Beispiel #24
0
 public override TimedMethod[] UseSupport(int i)
 {
     TimedMethod[] goopPart;
     if (Attacks.EvasionCycle(Party.members[i], Party.GetEnemy()))
     {
         goopPart = Party.GetEnemy().status.Goop();
     }
     else
     {
         goopPart = new TimedMethod[] { new TimedMethod(60, "Log", new object[] { "Miss" }), new TimedMethod("Null") };
     }
     return(new TimedMethod[] { new TimedMethod(0, "Audio", new object[] { "Big Swing" }),
                                new TimedMethod(0, "SwitchTo", new object[] { i + 1 }), goopPart[0], goopPart[1] });
 }
 public TimedMethod[] Restrain()
 {
     if (Attacks.EvasionCycle(this, Party.GetPlayer()))
     {
         TimedMethod[] goopPart = Party.GetPlayer().status.Goop();
         return(new TimedMethod[] { new TimedMethod(0, "Audio", new object[] { "Big Swing" }),
                                    new TimedMethod(60, "Log", new object[] { ToString() + " used a straight jacket" }), goopPart[0], goopPart[1] });
     }
     else
     {
         return(new TimedMethod[] { new TimedMethod(0, "Audio", new object[] { "Big Swing" }),
                                    new TimedMethod(60, "Log", new object[] { ToString() + " missed a straight jacket" }) });
     }
 }
Beispiel #26
0
 public TimedMethod[] Sleep()
 {
     TimedMethod[] sleepPart;
     if (Attacks.EvasionCycle(this, Party.GetPlayer()))
     {
         sleepPart = Party.GetPlayer().status.Sleep();
     }
     else
     {
         sleepPart = new TimedMethod[] { new TimedMethod(60, "Log", new object[] { "And nothing happened" }), new TimedMethod("Null") };
     }
     return(new TimedMethod[] { new TimedMethod(0, "Audio", new object[] { "Hypnosis" }),
                                new TimedMethod(60, "Log", new object[] { ToString() + " let the pendulum sway" }), sleepPart[0], sleepPart[1] });
 }
 public TimedMethod[] Poison()
 {
     TimedMethod[] poisonPart;
     if (Attacks.EvasionCycle(this, Party.GetPlayer()))
     {
         poisonPart = Party.GetPlayer().status.Poison(2);
     }
     else
     {
         poisonPart = new TimedMethod[] { new TimedMethod(60, "Log", new object[] { "miss" }), new TimedMethod("Null") };
     }
     return(new TimedMethod[] { new TimedMethod(0, "Audio", new object[] { "Oil" }),
                                new TimedMethod(60, "Log", new object[] { ToString() + " threw a toxic brew" }), poisonPart[0], poisonPart[1] });
 }
Beispiel #28
0
 public TimedMethod[] Insult()
 {
     TimedMethod[] statPart = new TimedMethod[] { new TimedMethod("Null"), new TimedMethod("Null") };
     if (Attacks.EvasionCycle(this, Party.GetPlayer()))
     {
         Party.GetPlayer().GainGuard(-6);
         Party.GetPlayer().GainCharge(-6);
         statPart[0] = new TimedMethod(0, "CharLogSprite", new object[] { "-6", Party.playerSlot - 1, "charge", true });
         statPart[1] = new TimedMethod(0, "CharLogSprite", new object[] { "-6", Party.playerSlot - 1, "guard", true });
     }
     GainCharge(5);
     return(new TimedMethod[] { new TimedMethod(0, "Audio", new object[] { "Poison" }),
                                new TimedMethod(60, "Log", new object[] { ToString() + " called you a failure, worthless, ect" }),
                                new TimedMethod(0, "CharLogSprite", new object[] { "5", Party.enemySlot - 1, "charge", false }), statPart[0], statPart[1] });
 }
Beispiel #29
0
 public TimedMethod[] MindGames()
 {
     if (Attacks.EvasionCycle(this, Party.GetPlayer()))
     {
         Party.GetPlayer().GainCharge(-3);
         Party.GetPlayer().status.Stun(2);
         GainEvasion(5);
         GainGuard(3);
         return(new TimedMethod[] { new TimedMethod(60, "Log", new object[] { ToString() + " gave a sinister threat" }) });
     }
     else
     {
         return(new TimedMethod[] { new TimedMethod(60, "Log", new object[] { ToString() + " gave a sinister threat...but it was futile" }) });
     }
 }
 public TimedMethod[] Oil()
 {
     if (Attacks.EvasionCycle(this, Party.GetPlayer()))
     {
         Party.GetPlayer().GainDefense(-2);
         return(new TimedMethod[] { new TimedMethod(0, "AudioAfter", new object[] { "Oil", 10 }),
                                    new TimedMethod(60, "Log", new object[] { ToString() + " dumped oil. Defense down" }),
                                    new TimedMethod(0, "CharLogSprite", new object[] { -2, Party.playerSlot - 1, "defense", true }) });
     }
     else
     {
         return(new TimedMethod[] { new TimedMethod(0, "AudioAfter", new object[] { "Drink", 10 }),
                                    new TimedMethod(60, "Log", new object[] { ToString() + " dumped oil. It missed" }) });
     }
 }