/// <summary> /// Handles the on item click. /// </summary> /// <param name="itemDisplay">Item display.</param> public void HandleOnBerufClick(InventoryItemBerufDisplay itemDisplay) { Toolbox globalVars = Toolbox.Instance; lpHelper = globalVars.lernHelper; string berufsWahl = itemDisplay.item.name; Dictionary <string, List <Beruf> > berufsKenntnisse = lpHelper.Berufskenntnisse; List <Beruf> wahlFach; berufsKenntnisse.TryGetValue(berufsWahl, out wahlFach); //Hole Fachkenntnisse für den Beruf Transform berufPanelDisplay = null; GameObject fachAllgemein = GameObject.Find("FachBeruf"); GameObject fachGewählt = GameObject.Find("FachGewählt"); berufPanelDisplay = fachAllgemein.transform; int berufsWurf = lpHelper.BerufswahlW100; //ClearScreen und fülle auf lpHelper.ResetPanelFachbBerufeClicked(); RemoveItemDisplay(fachGewählt); RemoveItemDisplay(fachAllgemein); CreateFachItemsForBeruf(wahlFach, berufPanelDisplay); //Zeige Items }
public void FillLernPunkteAllgemeinWissen() { Toolbox globalVars = Toolbox.Instance; LernPlanHelper lernHelper = globalVars.lernHelper; //Zuerst werden nur die Fachkenntnissse eingefüllt: inRestAllgemeinWissen.text = lernHelper.LernPunkteAllgemeinWissen.ToString(); }
/// <summary> /// Sets the berufs wahl dice. /// </summary> public void SetBerufsWahlDice() { Toolbox globalVars = Toolbox.Instance; LernPlanHelper lernHelper = globalVars.lernHelper; lernHelper.BerufswahlW100 = UnityEngine.Random.Range(1, 101); //W100 für die Berufswahl inBerufsWurf.text = lernHelper.BerufswahlW100.ToString(); }
public void SetLernPunkteUngewFertigkeiten() { Toolbox globalVars = Toolbox.Instance; LernPlanHelper lernHelper = globalVars.lernHelper; lernHelper.LernPunkteUngewFertigkeiten = UnityEngine.Random.Range(1, 7); inLernPunkteUngewFertigkeiten.text = lernHelper.LernPunkteUngewFertigkeiten.ToString(); lernHelper.lernPunkteResetUngewFertigkeiten = true; //neu gewürfelt }
public void SetLernPlanPunkteAllgemeinwissen() { Toolbox globalVars = Toolbox.Instance; LernPlanHelper lernHelper = globalVars.lernHelper; lernHelper.LernPunkteAllgemeinWissen = UnityEngine.Random.Range(1, 7) + 1; inLernPunkteAllgemeinWissen.text = lernHelper.LernPunkteAllgemeinWissen.ToString(); lernHelper.lernPunkteResetAllgemein = true; //neu gewürfelt }
public void SetLernPlanPunkteZauber() { Toolbox globalVars = Toolbox.Instance; LernPlanHelper lernHelper = globalVars.lernHelper; lernHelper.LernPunkteZauber = UnityEngine.Random.Range(1, 7) + UnityEngine.Random.Range(1, 7); inLernPunkteZauber.text = lernHelper.LernPunkteZauber.ToString(); lernHelper.lernPunkteResetZauber = true; //neu gewürfelt }
/// <summary> /// Fills the panel fachkenntnisse. /// </summary> public override void FillPanel() { Toolbox globalVars = Toolbox.Instance; LernPlanHelper lernHelper = globalVars.lernHelper; //Prepare listItems List <InventoryItem> listItems = lernHelper.GetAllgemeinWissen(); ConfigurePrefab(listItems); }
/// <summary> /// Fills the panel fachkenntnisse. /// </summary> public override void FillPanel() { Toolbox globalVars = Toolbox.Instance; LernPlanHelper lernHelper = globalVars.lernHelper; //Prepare listItems List <InventoryItem> listItems = lernHelper.GetFachkenntnisseItems(); ConfigurePrefab(listItems); PreSelectZwerge(globalVars); }
private void ModifyLernPunkteRest(int deltaPoints) { LernPlanHelper lpHelper = Toolbox.Instance.lernHelper; int lernPunkteRest = maskenType.GetLernPunkteRest(); lernPunkteRest += deltaPoints; maskenType.SetLernPunkteRest(lernPunkteRest); lpHelper.LernPunktePool += deltaPoints; inputPointsLeft.text = maskenType.GetLernPunkteRest().ToString(); inputPointsPool.text = lpHelper.LernPunktePool.ToString(); }
public void FillLernPunkteUngewFertigkeiten() { Toolbox globalVars = Toolbox.Instance; LernPlanHelper lernHelper = globalVars.lernHelper; int gesamtUngewFertigkeiten = lernHelper.LernPunkteUngewFertigkeiten + lernHelper.LernPunktePool; //Zuerst werden nur die Fachkenntnissse eingefüllt: inRestUngewFertigkeiten.text = gesamtUngewFertigkeiten.ToString(); lernHelper.LernPunkteUngewFertigkeiten = gesamtUngewFertigkeiten; }
/// <summary> /// Fills the panel fachkenntnisse. /// </summary> public override void FillPanel() { Toolbox globalVars = Toolbox.Instance; LernPlanHelper lernHelper = globalVars.lernHelper; //Lösche alte Einträge RemoveItemDisplay(); //Prepare listItems List<InventoryItem> listItems =lernHelper.GetBerufe(); //Fachkenntnisse werden entsprechend der Lernpunkte aufgelistet ConfigurePrefab(listItems); }
public void FillLernPunkteFields() { Toolbox globalVars = Toolbox.Instance; LernPlanHelper lernHelper = globalVars.lernHelper; //Zuerst werden nur die Fachkenntnissse eingefüllt: inResteLP.text = lernHelper.LernPunkteFach.ToString(); //Restepool: lernHelper.LernPunktePool = lernHelper.LernPunkteFach + lernHelper.LernPunkteWaffen + lernHelper.LernPunkteZauber; inPoolLP.text = lernHelper.LernPunktePool.ToString(); }
/// <summary> /// Fills the panel with Zauber. /// </summary> public override void FillPanel() { Toolbox globalVars = Toolbox.Instance; LernPlanHelper lernHelper = globalVars.lernHelper; //Prepare listItems List <InventoryItem> listZauberformeln = lernHelper.GetZauberFormeln(); List <InventoryItem> listZaubersalze = lernHelper.GetZauberSalze(); List <InventoryItem> listZauberlieder = lernHelper.GetZauberLieder(); //Concat lists: listZauberformeln.AddRange(listZaubersalze); listZauberformeln.AddRange(listZauberlieder); ConfigurePrefab(listZauberformeln); }
/// <summary> /// Handles the on item click. /// </summary> /// <param name="itemDisplay">Item display.</param> public void HandleOnItemClick(InventoryItemDisplay itemDisplay) { //Display aus dem der Click stammt string contextItemDisplay = itemDisplay.transform.parent.name; lpHelper = Toolbox.Instance.lernHelper; //Hier sind die Arten der Panels zu speicher, die vom Click betroffen sein können Transform allgemeinPanelDisplay = null; string righPanelShort = "Gewählt"; GameObject fachAllgemein = GameObject.Find("FachGewählt"); allgemeinPanelDisplay = fachAllgemein.transform; int aktKategorieClicked = itemDisplay.item.cost; //Geklicktes Item schon aktiviert -> deaktivieren if (itemDisplay.item.activated) { if (contextItemDisplay.Contains(righPanelShort)) { itemDisplay.item.activated = false; itemDisplay.gameObject.SetActive(false); lpHelper.FachBerufClicked -= 1; lpHelper.KategorieClicked -= aktKategorieClicked; DeleteFertigkeitFromCharacter(itemDisplay.item); } } else //Neues Item einfügen, falls nicht aktiv-> verschiedene Zielpanels { bool addMore = CheckBerufFachOk(itemDisplay); if (addMore) { lastKatClicked = aktKategorieClicked; lpHelper.FachBerufClicked += 1; lpHelper.KategorieClicked += aktKategorieClicked; InsertNewItem(itemDisplay, contextItemDisplay, lpHelper, allgemeinPanelDisplay); AddFertigkeitToCharacter(itemDisplay.item); lpHelper.lernPunkteResetUngewFertigkeiten = false; //jetzt kann das Panel mit Inhalt bleiben } } }
public void SetRestLP() { Toolbox globalVars = Toolbox.Instance; LernPlanHelper lpHelper = globalVars.lernHelper; GameObject fachPanel = GameObject.Find("GewähltFach"); GameObject waffenPanel = GameObject.Find("GewähltWaffen"); GameObject zauberPanel = GameObject.Find("GewähltZauber"); if (fachPanel != null) { inRestLP.text = lpHelper.LernPunkteFach.ToString(); } else if (waffenPanel != null) { inRestLP.text = lpHelper.LernPunkteWaffen.ToString(); } else if (zauberPanel != null) { inRestLP.text = lpHelper.LernPunkteZauber.ToString(); } }
// Resettet das Fachpanel, falls neu gewürfelt wurde void OnEnable() { Toolbox globalVars = Toolbox.Instance; lernHelper = globalVars.lernHelper; if (lernHelper.lernPunkteResetFach == true && gameObject.name == "GewähltFach") { //setze panel zurück RemoveItemDisplay(); //Setze Fertigkeiten zurück //Setze Lernpunkte zurück } else if (lernHelper.lernPunkteResetWaffe == true && gameObject.name == "GewähltWaffen") { RemoveItemDisplay(); } else if (lernHelper.lernPunkteResetZauber == true && gameObject.name == "GewähltZauber") { RemoveItemDisplay(); } }
/// <summary> /// Handles the on item click. /// </summary> /// <param name="itemDisplay">Item display.</param> public void HandleOnItemClick(InventoryItemDisplay itemDisplay) { //Display aus dem der Click stammt string contextItemDisplay = itemDisplay.transform.parent.name; int lernpunkteDelta = itemDisplay.item.cost; LernPlanHelper lpHelper = Toolbox.Instance.lernHelper; //Hier sind die Arten der Panels zu speicher, die vom Click betroffen sein können Transform allgemeinPanelDisplay = null; string righPanelShort = "Gewählt"; GameObject fachAllgemein = GameObject.Find("GewähltUngewFertigkeiten"); allgemeinPanelDisplay = fachAllgemein.transform; //Geklicktes Item schon aktiviert -> deaktivieren if (itemDisplay.item.activated) { if (contextItemDisplay.Contains(righPanelShort)) { itemDisplay.item.activated = false; itemDisplay.gameObject.SetActive(false); ReSetLearningPoints(itemDisplay.item.type, lernpunkteDelta, lpHelper); DeleteFertigkeitFromCharacter(itemDisplay.item); } } else //Neues Item einfügen, falls nicht aktiv-> verschiedene Zielpanels { bool addMore = ((lpHelper.LernPunkteUngewFertigkeiten - lernpunkteDelta) >= 0) ? true : false; if (addMore) { InsertNewItem(itemDisplay, contextItemDisplay, lernpunkteDelta, lpHelper, allgemeinPanelDisplay); AddFertigkeitToCharacter(itemDisplay.item); lpHelper.lernPunkteResetUngewFertigkeiten = false; //jetzt kann das Panel mit Inhalt bleiben } } }
/// <summary> /// Inserts the new item. Dazu werden übergeben: QuellItem, auf das geklickt wurde, QuellPanel, abzuziehende LPs sowie das Zielpanel /// </summary> /// <param name="itemDisplay">Item display.</param> /// <param name="contextItemDisplay">Context item display.</param> /// <param name="lernpunkteDelta">Lernpunkte delta.</param> /// <param name="lpHelper">Lp helper.</param> /// <param name="rightPanelDisplay">Right panel display.</param> void InsertNewItem(InventoryItemDisplay itemDisplay, string contextItemDisplay, LernPlanHelper lpHelper, Transform rightPanelDisplay) { itemDisplay.item.activated = true; //erzeuge neues item CreateInventoryItem(itemDisplay, rightPanelDisplay); }
protected MaskenType() { this.lpHelper = Toolbox.Instance.lernHelper; }
public void InstantiateLernplanHelpers() { // Your initialization code here mCharacterHelper = new MidgardCharacterHelper(this.mCharacter); lernHelper = new LernPlanHelper(mCharacterHelper); }
void SetLearningPoints(string type, int deltaPoints, LernPlanHelper lpHelper) { lpHelper.LernPunkteUngewFertigkeiten -= deltaPoints; inputPointsLeft.text = lpHelper.LernPunkteUngewFertigkeiten.ToString(); }
/// <summary> /// Inserts the new item. Dazu werden übergeben: QuellItem, auf das geklickt wurde, QuellPanel, abzuziehende LPs sowie das Zielpanel /// </summary> /// <param name="itemDisplay">Item display.</param> /// <param name="contextItemDisplay">Context item display.</param> /// <param name="lernpunkteDelta">Lernpunkte delta.</param> /// <param name="lpHelper">Lp helper.</param> /// <param name="rightPanelDisplay">Right panel display.</param> void InsertNewItem(InventoryItemDisplay itemDisplay, string contextItemDisplay, int lernpunkteDelta, LernPlanHelper lpHelper, Transform rightPanelDisplay) { itemDisplay.item.activated = true; //erzeuge neues item CreateInventoryItem(itemDisplay, rightPanelDisplay); SetLearningPoints(contextItemDisplay, lernpunkteDelta, lpHelper); }
void ReSetLearningPoints(string type, int deltaPoints, LernPlanHelper lpHelper) { lpHelper.LernPunkteAllgemeinWissen += deltaPoints; inputPointsLeft.text = lpHelper.LernPunkteAllgemeinWissen.ToString(); }
/// <summary> /// Gets the berufe. /// Achtung: Rassen und Berufe, die nicht kompatibel sind: /// Elfen: /// {Bergmann, Krämer, Schmuggler, Sklavenhändler, Winzer, Wirt} /// Gnome: /// {Bettler, Flussschiffer, Grobschmied, Kapitän, Karawanenführer, Kurtisane, Räuber, Scharfrichter, Seemannn, Schlachter, Sklavenhändler, Steuermann, Träger, Winzer, Zureiter} /// Halbling: /// {Bergmann, Bootsbauer, Falkner, Flussschiffer, Kapitän, Karawanenführer, Räuber, Rechtsgelehrter, Sattler, Scharfrichter, Seemannn, Sklavenhändler, Stadtwache, Steuermann, Waffenschmied, Waldarbeiter, Zureiter } /// Zwerge: /// {Akrobat, Barbier, Bettler, Bootsbauer, Dieb, Falkner, Fallensteller, Fischer, Flussschiffer, Jäger, Kapitän, Kurtisane, Sattler, Seemannn, Sklavenhändler, Steuermann, Waldarbeiter, Zureiter } /// </summary> public List <InventoryItem> GetBerufe() { Berufe berufeAlle = globalVars.MidgardeBerufe; MidgardCharakter mCharacter = mCharacterHelper.mCharacter; LernPlanHelper lpHelper = globalVars.lernHelper; List <Beruf> berufe; Dictionary <string, List <Beruf> > berufeDict = new Dictionary <string, List <Beruf> > (); List <InventoryItem> returnList = new List <InventoryItem> (); AbenteuerTyp[] kämpfer = { AbenteuerTyp.As, AbenteuerTyp.Kr, AbenteuerTyp.Or, AbenteuerTyp.Soe }; AbenteuerTyp[] zauberer = { AbenteuerTyp.Be, AbenteuerTyp.Dr, AbenteuerTyp.Ma, AbenteuerTyp.Hx, AbenteuerTyp.PF, AbenteuerTyp.PHa, AbenteuerTyp.PHe, AbenteuerTyp.PK, AbenteuerTyp.PM, AbenteuerTyp.PT, AbenteuerTyp.PW, AbenteuerTyp.Th }; string[] ElfenNichtBerufe = { "Bergmann", "Krämer", "Schmuggler", "Sklavenhändler", "Winzer", "Wirt" }; string[] GnomeNichtBerufe = { "Bettler", "Flussschiffer", "Grobschmied", "Kapitän", "Karawanenführer", "Kurtisane", "Räuber", "Scharfrichter", "Seemannn", "Schlachter", "Sklavenhändler", "Steuermann", "Träger", "Winzer", "Zureiter" }; string[] HalblingNichtBerufe = { "Bergmann", "Bootsbauer", "Falkner", "Flussschiffer", "Kapitän", "Karawanenführer", "Räuber", "Rechtsgelehrter", "Sattler", "Scharfrichter", "Seemannn", "Sklavenhändler", "Stadtwache", "Steuermann", "Waffenschmied", "Waldarbeiter", "Zureiter" }; string[] ZwergeNichtBerufe = { "Akrobat", "Barbier", "Bettler", "Bootsbauer", "Dieb", "Falkner", "Fallensteller", "Fischer", "Flussschiffer", "Jäger", "Kapitän", "Kurtisane", "Sattler", "Seemannn", "Sklavenhändler", "Steuermann", "Waldarbeiter", "Zureiter" }; //Berufe müssen entsprechend und Herkunft gefiltert werden if (mCharacter.StadtLand == StadtLandFluss.Stadt) { berufe = berufeAlle.stadtBerufe.berufe; } else { berufe = berufeAlle.landBerufe.berufe; } //Nun müssen die Berufe gefiltert werden: foreach (Beruf beruf in berufe.ToArray()) { if (beruf.schicht.Length > 0) //Schicht { string sCharacter = mCharacter.Schicht.ToString() [0].ToString(); //Hole ersten Buchstaben if (!beruf.schicht.Contains(sCharacter)) //Werfe Beruf, falls nicht gleiche schicht { berufe.Remove(beruf); continue; } } if (kämpfer.Contains(mCharacter.Archetyp)) { if (!beruf.typus.Contains("k")) { berufe.Remove(beruf); continue; } } else if (zauberer.Contains(mCharacter.Archetyp)) { if (!beruf.typus.Contains("z")) { berufe.Remove(beruf); continue; } } //Füge Beruf dem Dictionary hinzu if (!berufeDict.ContainsKey(beruf.name)) { List <Beruf> newList = new List <Beruf> (); newList.Add(beruf); berufeDict.Add(beruf.name, newList); } else { List <Beruf> oldList; berufeDict.TryGetValue(beruf.name, out oldList); oldList.Add(beruf); } } //Berufe müssen für Rassen gefiltert werden bzgl. Rassen List <string> keysToRemove = new List <string>(); if (mCharacter.Spezies == Races.Elf) { keysToRemove = ElfenNichtBerufe.OfType <string> ().ToList(); } else if (mCharacter.Spezies == Races.Halbling) { keysToRemove = HalblingNichtBerufe.OfType <string> ().ToList(); } else if (mCharacter.Spezies == Races.Zwerg) { keysToRemove = ZwergeNichtBerufe.OfType <string> ().ToList(); } else if (mCharacter.Spezies == Races.Berggnom || mCharacter.Spezies == Races.Waldgnom) { keysToRemove = GnomeNichtBerufe.OfType <string> ().ToList(); } foreach (var item in keysToRemove) { berufeDict.Remove(item); } //Erstelle Iventory Items nur, falls genügend Fachkenntnisse im Beruf foreach (string key in berufeDict.Keys) { int wuerfelWurf = lpHelper.BerufswahlW100; List <Beruf> wahlFach; berufeDict.TryGetValue(key, out wahlFach); lernPlanModifier.ModifyBerufeFromWurf(wuerfelWurf, wahlFach); if (wahlFach.Count > 0) { returnList.Add(new InventoryItem(0, key, "", 0, "")); } } Berufskenntnisse = berufeDict; return(returnList); }