Was ist die performanteste Methode, einen Haufen Bedingungen, z.B. von 1 bis 100, aufzubauen?
Also so, dass je nach Zahlenwert einer Variable, 1 bis 100, was anderes passiert.
Was ist die performanteste Methode, einen Haufen Bedingungen, z.B. von 1 bis 100, aufzubauen?
Also so, dass je nach Zahlenwert einer Variable, 1 bis 100, was anderes passiert.
--
Mir war nichtmal bewusst dass ich nominiert wurde, aber: Cool! Hälfte des Lobes muss aber unbedingt an Archeia!Now all new and shiny:CherryShare | Patches und Tools | Programmwunschthread | www.cherrytree.at | Cherry = CherryDT
RM Eventfactory?
Das ist vielleicht der einfachste, aber darum gehts ja nicht.
--
Mir war nichtmal bewusst dass ich nominiert wurde, aber: Cool! Hälfte des Lobes muss aber unbedingt an Archeia!Now all new and shiny:CherryShare | Patches und Tools | Programmwunschthread | www.cherrytree.at | Cherry = CherryDT
sofern man die werte irgendwie von 1 bis 99 umwandeln kann, wurd ich sagen es ist wenn man nen map event hat mit bis 99 seiten (was max ist wenn ich mich recht erinnere), und dann halt diesem event rufen mit n variabel die zu der seite passt. hat man mehr als 99 werten könnte man nen branch haben der guckt ob der wert über 99 ist, wenn ja nimm 99 davon und mach einem neuen check bis es unter 99 ist und dann dem entsprechend event rufen.
alternativ könnte man auch nen bedingungs pyramide bauen a la binärbaum, bzw. man hat erst ein branch mit dem mittelwert und guckt dann ob der wert den man hat gleich ist, wenn nicht dann obs kleiner oder grösser ist. wenn grösser dann geht man im "true" teil, ansonsten geht man in dem "else" teil, wo neue bedinungen mit nem neuen mittelwert für dem entsprechend restierende zahlen drin sind, bis man dem korrekten wert gefunden hat.
if(>50)
jump to LOL
else
if(1)
else
if(2)
else
if(3)
else
end
end
end
Label: LOL
if(100)
else
end
end
--CortiWins GitHub DynRPG < Charguide < [2k3] Zahlen und Werte < [2k3] Kurven als Wertetemplates < [2k3] DynRPG Werkstatt
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬ஜ۩۞۩ஜ▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Hello from the otter side
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬ஜ۩۞۩ஜ▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Es kann 100 Seiten haben. Insofern wäre das sogar noch schneller als ich eigentlich gedacht habe. Dafür bekommst du das Prädikat richtiger als richtig.
Das war das, was ich eigentlich gemeint hatte.
Das kapier ich jetzt grade nicht...
Wenn >50, springst du zu wenn 100; und wenn <=50 fragst du aber einzeln ab? Vielleicht meinst du ja auch einen Binärbaum, dann wärs richtig, aber Kazesui war schneller und ist demnach dran.
--
Mir war nichtmal bewusst dass ich nominiert wurde, aber: Cool! Hälfte des Lobes muss aber unbedingt an Archeia!Now all new and shiny:CherryShare | Patches und Tools | Programmwunschthread | www.cherrytree.at | Cherry = CherryDT
Habe mir schon gedacht dass du an dem Binärbaum gedacht hast, und habe desshalb den auch erwähnt.
aber mal zum frage:
Wie kann man mit event code herausfinden ob ein event innerhalb eines Kreisses ist mit nur einem Bedingung/Conditional branch?
zum beispiel:
Die 'x' markiert Tiles um einem Punkt 'O', und man soll herausfinden ob ein Event innerhalb die Fläche von 'x' drin ist.
Dafür soll nur einem Conditional branch benutzt werden, aber Variabel Operationen könnt ihr so viel wie ihr wollt benutzen. Der Kreis im Code is auch nur ein Beispiel und der Kreis muss nicht diese grösse haben, solange es halt ein Kreis bildet.
Für die, die ein bisschen Mathe können dürfte es nicht so schwer sein
Hero X - ZielX
Hero Y - ZielY
If ZielX is greater than -4
>If ZielX is less than 4
>>If ZielY is greater than -4
>>>If ZielY is less than 4
ZIEL IST IM RADIUS
erstens wäre dass 4 conditional branches stadt eine, und zweitens wäre das kein Kreis sondern ein Viereck.
dein vorschlag wurde etwa so aussehen
Pseudocode:
Ich gehe hiermit die X-Spalten nacheinander ab und grenze die dafür erlaubten Y-Werte ein.
Ist eigentlich ganz simpel.
Um den Fall zu integrieren, dass es ausserhalb liegt, benutzt man entweder nen doppelten
Switch oder verschachtelt die Fälle in ELSEs.
Ich muss mich schlecht ausgedrückt haben. Es soll nur 1 bedingung / conditional branch / fork / if statement benutzt werden.
Es geht aber in die richtige richtung, ist schon richtig erstmal den differenzen zu finden.
R.D. ist schon auf was drin, ist aber immernoch 3 Conditional branches, und es ist immernoch da nicht wirklich ein Kreis, sondern ein anderem karoförmiges Viereck wie du selber geschrieben hast. Und es ist genau nach diesem "extra" mit dem zusammen rechnen von X und Y ich aus bin.
mit diesem extra braucht man die beiden branches die nachguckt ob eine der werte negativ sind nicht.