Mika hat eine neue Datei hinzugefügt:
ZitatAlles anzeigenBeschreibung
Diese Library enthält Annäherungen für viele häufig benötigte Mathefunktionen und kann ganz leicht in euren Skript eingebunden werden.
Installation
1. <kuid:388413:439002> dem script-include-table hinzufügen. Wenn es in der config des Mutterassets noch keinen gibt, erstelle einen neuen wie folgt:
(2. <kuid:388413:439002> dem kuid-table hinzufügen. Der Eintrag muss "mathplus" heißen:) Dieser Schritt ist in der V2 nur noch optional!
3. include "mathplus.gs" am Anfang eures Skripts einfügen
4. MathPlus MathPlus; bei den globalen Variabledeklarationen hinzufügen
5. Nun noch diesen Code in der Init-Funktion hinzufügen, um die Library zu laden: MathPlus = cast<MathPlus>World.GetLibrary(me.GetAsset().LookupKUIDTable("mathplus"));Diese Schritte werden in der V2 nicht mehr benötigt!1. Add <kuid:388413:439002> to your script-include-table. Create a new script-include-table if you don't yet have one like:
(2. Add <kuid:388413:439002> to your kuid-table. Make sure you name the entry 'mathplus' like:) This is completely optional in V2
3. add include "mathplus.gs" to the top of your script file where the other includes are located
4. add MathPlus MathPlus; right after the beginning of your class where the other global variables are located
5. finally, add this line to your init method to actually load the MathPlus-Library: MathPlus = cast<MathPlus>World.GetLibrary(me.GetAsset().LookupKUIDTable("mathplus"));In V2 do not do this. Including the scipt file will be enough.6. Congratulations, you can now access functions like MathPlus.Round(5.62)!
Verfügbare Funktionen
public define float E = 2.7182818 (Eulersche Zahl, verfügbar via MathPlus.E)
public float Sqr(float x) (x²)
public float Pow(float base, float power) (Potenz zu beliebigem Exponent)
public float Floor(float input) (Abrunden zur nächst kleineren Ganzzahl)
public int IntFloor(float input)
public float Ceil(float input) (Aufrunden zur nächst größeren Ganzzahl)
public int IntCeil(float input)
public float Round(float input) (ganz normales Auf/Abrunden basierend auf der ersten Nachkommastelle)
public int IntRound(float input)
public bool IsReal(float input) (Ist die Zahl eine Ganzzahl?)
public bool IsNatural(float input) (ist die Zahl natürlich?)
public int Fact(int input) (Fakultät einer Zahl)
public float Sin(float x) (Trigonometrische Funktionen, standardmäßig mit Rad, alternativ mit Deg)
public float DegSin(float x)
public float Cos(float x)
public float DegCos(float x)
public float Tan(float x)
public float Exp(float x) (e^x)
Geplant
arcsin
arccos
arctan
Enthaltene KUIDs
<kuid:388413:439002>
Kritik, Wünsche, Verbesserungsvorschläge...
...sind gerne gesehen. Kürzere könnt ihr in die Kommentare des Downloads schreiben, längere bitte in den Thread, welchen ihr mit einem Klick auf den Button "Support-Thema" erreichen könnt
PS: Wer die Skriptdatei liest und den Kopf schüttelt: Die Funktionen sind so kompakt wie möglich gehalten, es wurde nicht viel ausgestaltet oder kommentiert. Das mache ich eigentlich nicht beim Programmieren, da hier aber viele Einzeiler vorkommen, welche man recht einfach verstehen kann und welche sich auch nicht kreuz und quer callen sondern schön von oben nach unten aufbauend, wurde an dieser Stelle auf große Pre-defs, Param-Erklärungen, usw verzichtet. Das meiste ist meiner Meinung nach selbsterklärend in diesem Fall.