Beginnen wir mit einem einfachen Mod. Er begrüßt den Spieler mit einer Chatnachricht, sobald ein Block gelöscht wurde.
using System;
using System.Collections.Generic;
using System.Text;
namespace ManicDigger.Mods
{
class HalloSpieler : IMod
{
ModManager modManager;
// Vor dem Start des Mod wird diese Methode vom Spiel aufgerufen.
// Für die spätere Interaktion wird der übergebene ModManager in einem
// Attribut gespeichert.
public void PreStart(ModManager m)
{
modManager = m;
}
// Beim Start des Mod wird die Methode 'OnBlockDelete' für
// das Event registriert, das eintritt, wenn ein Block gelöscht wurde.
public void Start(ModManager m)
{
m.RegisterOnBlockDelete(OnBlockDelete);
}
// Die Methode wird beim Löschen eines Blockes mit den
// Koordinaten und dem Typ des gelöschten Blocks aufgerufen.
void OnBlockDelete(int player, int x, int y, int z, int oldblock)
{
modManager.SendMessageToAll("Willkommen Spieler");
modManager.SendMessageToAll(
"Du hast den Block mit den Koordinaten " +
"(" + x + "|" + y + "|" + z + ") entfernt");
}
}
}
Das folgende Video zeigt das Mod in Aktion.
Eine interessante Variante des Farbwechselspiels lässt sich mit Manic Digger sogar in 3D programmieren. Bei dem Spiel wird ein großer Würfel aus zwei unterschiedlichen Blocktypen aufgebaut. Beim Anklicken eines Blocks ändern der angeklickte und alle angrenzenden Blöcke ihre Farbe. Das folgende Video veranschaulicht das Prinzip.
Versuche selbst, den Quelltext für das Spiel zu entwickeln. Nur wenn, du nicht weiter kommst, kannst du den Quelltext in der Fußnote als Orientierung verwenden.1)