// Update is called once per frame void Update () { if (Input.GetKeyDown ("w")) { Waffenclone = Instantiate(myWaffe); } Waffenclone.transform.eulerAngles = Direction.eulerAngles; Waffenclone.transform.position = Player.position; }
/// <summary> /// Gibt eine Liste an Waffen aus /// </summary> /// <param name="player">Der Spieler der mit dem Shop interargiert</param> /// <param name="waffengattung">Waffengattung nach welcher gefiltert werden soll</param> private static void ShowWeapons(Player player, Waffengattungen waffengattung) { /* * Sucht in der Liste "Waffen" alle Waffen einer speziellen Waffengattung. * Die Waffen werden im Anschluss nach ihrem Preis aufsteigend sortiert und in einer neuen Liste gespeichert. */ var waffen = (from waffe in Waffen where waffe.Waffengattung == waffengattung orderby waffe.Cost select waffe).ToList(); Console.Clear(); Menus.Bar(); Console.WriteLine("\nWähle eine Waffe:\n"); for (int i = 0; i < waffen.Count; i++) { Waffe w = waffen[i]; Console.WriteLine($"\t{i + 1:00}) {w.Name,-25} Kostet {w.Cost,4} Gold {w.MinDamage,5:00}-{w.MaxDamage:00} Schaden"); } Console.WriteLine($"\n\t0) Keine Auswahl treffen..."); Console.Write("\nWahl: "); ChooseWeapon(player, waffen); }
/// <summary> /// Wählt aus einer Liste von Waffen eine aus und fügt sie ggf. dem Spieler hinzu. /// </summary> /// <param name="player">Der Spieler</param> /// <param name="waffen">Liste mit Waffen</param> private static void ChooseWeapon(Player player, IList <Waffe> waffen) { /* * Dieser Delegat ersetzt die Codewiederholung zum anzeigen der Message */ Action <string, int> printMessage = (message, timeToWait) => { Console.Clear(); Console.Write(new string('\n', 10)); Console.WriteLine(message); System.Threading.Thread.Sleep(2000); }; int choose = int.Parse(Console.ReadLine()); if (choose == 0) { printMessage($"\t\t\tDu behälst {player.ActiveWeapon.Name} als aktive Waffe!", 2000); } else if (choose > 0 && choose <= waffen.Count) { Waffe hand = (Waffe)waffen[choose - 1].Clone(); if (player.Gold >= hand.Cost) { player.ActiveWeapon = hand; player.Gold -= hand.Cost; printMessage($"\t\t\t{player.ActiveWeapon.Name} wurde ausgewählt!", 2500); } else { printMessage("Dafür reicht dein Vermögen leider nicht aus!", 2000); } } else { Console.WriteLine("\nKeine Waffe ausgewählt!"); } }
public Player() { //Grundwerte Name = "Leer"; Score = 0; Maxscore = 259; Gold = 0; Skill = 0; //Leben Health = 10; HealthPool = 10; //Attribute Strengh = 10; Resilienz = 1; Satisfaction = 0; Stamina = 5; //Angriff ActiveWeapon = new Faust(); Mana = 5; ManaPool = 5; }