|
|
|
@ -51,11 +51,11 @@ public class Treasure extends ADungeonObject{
|
|
|
|
|
case 5:
|
|
|
|
|
case 6:
|
|
|
|
|
case 7:
|
|
|
|
|
descString = "eine Handvoll Schätze"; // TODO: generate real treasure here
|
|
|
|
|
descString = DetailedTreasure();
|
|
|
|
|
break;
|
|
|
|
|
case 8:
|
|
|
|
|
case 9:
|
|
|
|
|
descString = "zwei Handvoll Schätze"; // TODO: generate real treasure here
|
|
|
|
|
descString = DetailedTreasure() + "; außerdem " + DetailedTreasure();
|
|
|
|
|
break;
|
|
|
|
|
case 10:
|
|
|
|
|
descString = "uralte Waffe/Rüstung";
|
|
|
|
@ -107,4 +107,145 @@ public class Treasure extends ADungeonObject{
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private String DetailedTreasure(){
|
|
|
|
|
switch(Dice.Roll(20,1)){
|
|
|
|
|
case 1:
|
|
|
|
|
case 2:
|
|
|
|
|
case 3:
|
|
|
|
|
case 4: return Coins();
|
|
|
|
|
case 5:
|
|
|
|
|
case 6:
|
|
|
|
|
case 7:
|
|
|
|
|
case 8:
|
|
|
|
|
case 9: return Jewelry();
|
|
|
|
|
case 10:
|
|
|
|
|
case 11:
|
|
|
|
|
case 12:
|
|
|
|
|
case 13:
|
|
|
|
|
case 14: return Gems();
|
|
|
|
|
case 15:
|
|
|
|
|
case 16: return Coins() + " und " + Jewelry();
|
|
|
|
|
case 17:
|
|
|
|
|
case 18: return Coins() + " und " + Gems();
|
|
|
|
|
case 19: return Jewelry() + " und " + Gems();
|
|
|
|
|
case 20: return Coins() + ", " + Jewelry() + " und " + Gems();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private String Coins(){
|
|
|
|
|
switch(Dice.Roll(20,1)){
|
|
|
|
|
case 1:
|
|
|
|
|
case 2: return Dice.Roll(20, 2) + " Kreuzer";
|
|
|
|
|
case 3:
|
|
|
|
|
case 4: return Dice.Roll(20, 2) + " Heller";
|
|
|
|
|
case 5:
|
|
|
|
|
case 6: return Dice.Roll(20, 2) + " Silbertaler";
|
|
|
|
|
case 7:
|
|
|
|
|
case 8: return Dice.Roll(20, 2) + " Dukaten";
|
|
|
|
|
case 9:
|
|
|
|
|
case 10: return "Je " + Dice.Roll(20, 1) + " Kreuzer und Heller";
|
|
|
|
|
case 11:
|
|
|
|
|
case 12: return "Je " + Dice.Roll(20, 1) + " Kreuzer, Heller und Silbertaler";
|
|
|
|
|
case 13:
|
|
|
|
|
case 14: return "Je " + Dice.Roll(20, 1) + " Kreuzer, Heller, Silbertaler und Dukaten";
|
|
|
|
|
case 15:
|
|
|
|
|
case 16: return "Je " + Dice.Roll(20, 2) + " Silbertaler und Dukaten";
|
|
|
|
|
case 17:
|
|
|
|
|
case 18: return "Je " + Dice.Roll(20, 1) + " Kreuzer, Heller, Silbertaler und Dukaten";
|
|
|
|
|
case 19:
|
|
|
|
|
case 20: return Dice.Roll(20, 3) + " Dukaten";
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private String Jewelry(){
|
|
|
|
|
switch(Dice.Roll(20,1)){
|
|
|
|
|
case 1:
|
|
|
|
|
case 2: return Material() + "-Amulett";
|
|
|
|
|
case 3:
|
|
|
|
|
case 4: return Material() + "-Armreif";
|
|
|
|
|
case 5:
|
|
|
|
|
case 6: return Material() + "-Brosche";
|
|
|
|
|
case 7:
|
|
|
|
|
case 8: return Material() + "-Diadem";
|
|
|
|
|
case 9:
|
|
|
|
|
case 10: return Material() + "-Kette";
|
|
|
|
|
case 11:
|
|
|
|
|
case 12: return Material() + "-Ohrring";
|
|
|
|
|
case 13:
|
|
|
|
|
case 14: return Material() + "-Ring";
|
|
|
|
|
case 15: return Material() + "-Armreif mit eingearbeitetem " + Gem();
|
|
|
|
|
case 16: return Material() + "-Brosche besetzt mit " + Dice.Roll(6, 1) + Gems();
|
|
|
|
|
case 17: return Material() + "-Diadem besetzt mit " + Dice.Roll(6, 1) + Gems();
|
|
|
|
|
case 18: return Material() + "-Kette mit Anhänger mit einem " + Gems();
|
|
|
|
|
case 19: return Material() + "-Ohrring mit einem " + Gems();
|
|
|
|
|
case 20: return Material() + "-Ring mit einem " + Gems();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private String Material(){
|
|
|
|
|
switch(Dice.Roll(20,1)){
|
|
|
|
|
case 1: return "rostige(s/r) Eisen";
|
|
|
|
|
case 2: return "Eisen";
|
|
|
|
|
case 3: return "Zinn";
|
|
|
|
|
case 4:
|
|
|
|
|
case 5: return "Messing";
|
|
|
|
|
case 6:
|
|
|
|
|
case 7: return "Bronze";
|
|
|
|
|
case 8:
|
|
|
|
|
case 9: return "Kupfer";
|
|
|
|
|
case 10:
|
|
|
|
|
case 11:
|
|
|
|
|
case 12:
|
|
|
|
|
case 13:
|
|
|
|
|
case 14: return "Silber";
|
|
|
|
|
case 15:
|
|
|
|
|
case 16:
|
|
|
|
|
case 17: return "Gold";
|
|
|
|
|
case 18:
|
|
|
|
|
case 19: return "Elektrum";
|
|
|
|
|
case 20: return (Dice.Roll(6,1)==6 ? "Mindorium" : "Mondsilber");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private String Gems(){
|
|
|
|
|
switch(Dice.Roll(20,1)){
|
|
|
|
|
case 1:
|
|
|
|
|
case 2: return "Speckstein (weiß/braun/rot, " + Karat() + ")";
|
|
|
|
|
case 3:
|
|
|
|
|
case 4: return "Obsidian (schwarz, " + Karat() + ")";
|
|
|
|
|
case 5:
|
|
|
|
|
case 6: return "Malachit (dunkelgrün, " + Karat() + ")";
|
|
|
|
|
case 7:
|
|
|
|
|
case 8: return "Achat (rot/braun/grün, " + Karat() + ")";
|
|
|
|
|
case 9: return "Türkis (grün-blau, " + Karat() + ")";
|
|
|
|
|
case 10: return "Aventurin (grünlich, " + Karat() + ")";
|
|
|
|
|
case 11: return "Turmalin (farblos, " + Karat() + ")";
|
|
|
|
|
case 12: return "Obsidian (rot, " + Karat() + ")";
|
|
|
|
|
case 13: return "Jade (grün, " + Karat() + ")";
|
|
|
|
|
case 14: return "Topas (farblos, " + Karat() + ")";
|
|
|
|
|
case 15: return "Opal (milchig, " + Karat() + ")";
|
|
|
|
|
case 16: return "Feueropal (rot schimmernd, " + Karat() + ")";
|
|
|
|
|
case 17: return "Smaragd (grün, " + Karat() + ")";
|
|
|
|
|
case 18: return "Saphir (blau, " + Karat() + ")";
|
|
|
|
|
case 19: return "Rubin (rot, " + Karat() + ")";
|
|
|
|
|
case 20: return "Diamant (durchsichtig, " + Karat() + ")";
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private String Karat(){
|
|
|
|
|
switch(Dice.Roll(6,2)){
|
|
|
|
|
case 2: return Dice.Roll(20, 2).toString() + " Karat";
|
|
|
|
|
case 3:
|
|
|
|
|
case 4: return Dice.Roll(6, 2).toString() + " Karat";
|
|
|
|
|
case 5:
|
|
|
|
|
case 6: return Dice.Roll(6, 1).toString() + " Karat";
|
|
|
|
|
case 7:
|
|
|
|
|
case 8:
|
|
|
|
|
case 9: return (Dice.Roll(6, 1)/2).toString() + " Karat";
|
|
|
|
|
case 10: return (Dice.Roll(6, 3)+3).toString() + " Karat";
|
|
|
|
|
case 11: return Dice.Roll(6, 5).toString() + " Karat";
|
|
|
|
|
case 12: return (Dice.Roll(20, 1)+10).toString() + " Karat";
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|