Ergebnis 1 bis 18 von 18

Thema: Flexibles "skill pointer" System ... oder so?!

Baum-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #12
    Zitat Zitat von IndependentArt Beitrag anzeigen
    Danke für die weiteren Erklärungsversuche. ^^

    Das hörte sich für mich so an, als gäbe es 2 Listen. Und ich stolpere über die Formulierung „der erlernten Skills“, weil es so klingt, als hätte der Charakter diese von Anfang an schon alle gelernt, aber so meinst du es nicht, weil du ja später auch schreibst, dass der Status gelernt oder nicht aus dem Level hervorgeht.
    Ah - ja, ich sprach von zwei Listen, aber nur eine davon im Maker. Die eine Liste, die Teil deines Codes ist, legt fest, welcher Platz der 9x3-Tabelle welchen Skill beinhaltet. Die andere Liste, die du in der Database, in deinem Notizbuch oder auf ner Papierserviette haben kannst, ist einfach für dich, damit du irgendwo eine Übersicht hast, welche Skill-ID welchem Skill zugeordnet ist.

    Zitat Zitat von IndependentArt Beitrag anzeigen
    Das ist so auch korrekt. Nicht erlernte Skills ergeben eine Lücke, wie man bei dem .gif in der mittleren Spalte sieht. Ich fand zwar die Möglichkeit interessant, dass man sie mit deinem Skript auch aufrutschen lassen könnte, aber sie sollen eigentlich feste Plätze haben. Deswegen muss ich wohl beim Anzeigen der Pictures auch noch prüfen, ob der Skill-Level größer 0 ist.
    Der Maker unterstützt ja mittlerweile das anzeigen von Pics mittels Pointern, sprich, du nennst deine Bilder "Skill_0000", "Skill_0001", usw. und legst dann per Variable fest, welche Zahl am Ende abgerufen werden soll. Wenn du nun "Skill_0000" leer lässt (also einfach ein komplett transparentes Bild zeigst) brauchst du so wirklich bloß für nicht-erlernte Skills die Variable auf 0 lassen oder mittels "wenn Skill_Lv = 0" die PicID auf 0 zu setzen. Oder du machst die Abfrage vorher und zeigst einfach gar kein Picture an, wenn der SkillLvl = 0 ist, das ist sogar noch etwas performanter.

    Bei dem Rest muss ich nun raten, da das Anhangs-System des Forums seit einer ganzen Weile schon kaputt ist. Lad Bilder am besten extern hoch, mir wird hier nichts angezeigt ^^" Ich kann dir also nicht genau sagen, was bei dir nicht klappt.

    Bei X und Y hatte ich tatsächlich nen Denkfehler, man braucht mod nur bei einer von beiden Berechnungen und auch entweder die Spalten- oder die Zeilenanzahl:

    00 01 02
    03 04 05
    06 07 08
    09 10 11
    12 13 14
    15 16 17
    18 19 20
    21 22 23
    24 25 26

    Für die Spaltenzahl:
    Zelle mod Spaltenzahl = Spalte
    2 mod 3 = 2
    3 mod 3 = 0
    17 mod 3 = 2

    Für die Zeilenzahl:
    Zelle / Spaltenzahl = Zeile
    2 / 3 = 0
    3 / 3 = 1
    17 / 3 = 5

    (Du kannst auch von oben nach unten zählen anstatt von links nach rechts wie hier, wenn dir das besser passt, du musst dann bloß statt mit der Spaltenzahl anstatt mit der Zeilenzahl rechnen.) Wichtig ist hier, dass das Ergebnis von 0 beginnt zu zählen, die Zeilen- bzw. Spaltenzahl aber von 1 gezählt werden muss (mod 0 bzw. /0 würde Probleme geben). Wenn dir das zu verwirrend ist, kannst du das Ergebnis auch +1 rechnen, aber das läuft aufs selbe hinaus - wichtig ist, dass du dir da ein System überlegst und selbst den Durchblick behältst.
    Wenn wir nun wissen, in welcher Zeile oder Spalte wir sind, ist es ja kein Problem, die Koordinaten zu ermitteln, wenn diese gleichmäßig verteilt sind:

    Offset + (Abstand * Faktor)

    Offset ist, wo das ganze Anfängt, Abstand wäre bspw. der Zeilen- oder Spaltenabstand, Faktor wäre deine aktuelle Zeile oder Spalte.

    EDIT:
    Wenn du sowas häufiger brauchst kann ich dir Excel (oder ein anderes Tabellenkalkulationsprogramm) ans Herz legen - da kannst du dir das einmal schön visuell darstellen und dann einmal dir eine ganze Liste erstellen, wo deine das Programm anhand deiner Formeln für jede Zelle Zeile und Spalte bestimmen soll. So kannst du ausprobieren, ob deine Formeln das ausspucken, was du dir vorstellst, ehe du es im Maker baust.

    Geändert von BDraw (13.01.2018 um 13:27 Uhr)

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •