Вызов метода дочернего класса из родительского

Возможно ли, чтобы метод a.doStuff() выводил "B сделал что-то" без редактирования класса A? Если да, то как мне это сделать?

class Program
{
    static void Main(string[] args)
    {
        A a = new A();
        B b = new B();

        a.doStuff();
        b.doStuff();

        Console.ReadLine();
    }
}

class A
{
    public void doStuff()
    {
        Console.WriteLine("A did stuff");
    }
}

class B : A
{
    public void doStuff()
    {
        Console.WriteLine("B did stuff");
    }
}

Я делаю мод для игры в Steam, Terraria. И я не хочу декомпилировать и перекомпилировать все это, потому что это испортит steam. Моя программа "впрыскивается" в Terraria через XNA. Я могу использовать методы update() и draw() из XNA для модификации некоторых вещей. Но это довольно ограничено. Я хочу переопределить базовые методы, чтобы модифицировать больше вещей (например, worldgen).

13
задан user1178494 30 January 2012 в 17:42
поделиться