Scripten NL: introductie (dit lag al weken klaar maar had geen rechten in dit forumdeel)
Wat kun je o.a. met scripten binnen Trainz:
-een tekst laten zien/verdwijnen of veranderen -een lampje (corona) aan of uit zetten of laten knipperen -een mesh aan of uit zetten -een animatie starten, stoppen, de snelheid veranderen, of op een frame(fase van de animatie) zetten (voorbeeld ruitenwisser, deuren etc.) -een geluid afspelen, starten, stoppen. -een textuur veranderen/wisselen -de status opvragen van een item binnen trainz voorbeelden: gewicht, lengte, aantallen, stand van iets(een knop, een sein etc.) -schermpjes(interface) maken en html (een webpagina) -gegevens op slaan en terug halen (bijv. een bestemming)
Eigenlijk als je al een config.txt hebt gemaakt of veranderd, weet je basis een table (bijv mesh-table) begint met een haakje { en eindigt ermee }
Elk deel van een script begint met een naam dan een openings haakje { en sluit het deel af met } delen binnen die haakjes kunnen ook weer beeindigt worden met een ; of een combinatie van { en } Voorbeeld: naam scriptdeel { dit heb ik; dit heb ik nodig; dit wil ik { verander dit en dat; zeg dan gedaan;} of dit wil ik { verander het niet; zeg dan niks gedaan;} }
Taal De basis taal lijkt het meest op C++ is computer engels maar dan vaak afgekort voorbeelden: int, een integer heel getal float, een floatingpoint getal met comma bool, boolean een schakelaar 0 of 1 string, een tekst while, zolang dit geldt.... if, een als conditie else, het alternatief als niet if for, een loop conditie soup, de database, opslag van gegevens return, geef terug get, lees of haal op set, zet, breng asset, ding/onderdeel, kan van alles zijn sleep, rust/pauseer met de tijd erbij cast, letterlijk werp, maak verbinding met. //, dit is commentaar en wordt niet door script gelezen/gebruikt
later zullen we deze behandelen met voorbeelden
basis script layout: 1) de bovenste regel bevat includes. dat wil zeggen, welke andere scripts of basis scipts worden naar verwezen/gebruikt voorbeeld: include "locomotive.gs" //maakt gebruikt van het standaard locomotief script van Auran
2) dan volgt de class (wat voor script is het) voorbeeld: class virm isclass Locomotive { //dus het virm script is een locomotiefscript, die we erboven hebben "include" in deze sectie kondigen we aan (declare) welke scriptdelen volgen en benoemen variabelen. voorbeeld: thread void sparky();Asset spark; //kondigt aan dat er een functie is voor panto sparks en een onderdeel spark
3) bevat meestal de Init, (initiatie) wat moet er gebeuren bij de start van het script. voorbeeld: public void Init() {inherited(); WiperControl(); //inherited betekent ge-erft dus ook de init van locomotive.gs en je ziet dat bij init een wiper functie wordt gestart.
4) Nu komen onder elkaar de aparte script functies (totaal afhankelijk van wat je wil en volgt later)
Gebruikers op dit forum: Geen geregistreerde gebruikers. en 1 gast
Je mag geen nieuwe onderwerpen in dit forum plaatsen Je mag niet antwoorden op een onderwerp in dit forum Je mag je berichten in dit forum niet wijzigen Je mag je berichten niet uit dit forum verwijderen