DVS_Battle
» Siedler Map Source Forum » Siedler DEdK Script Forum » DVS_Battle
mcb
|
#26 17.03.2018 17:57 Beiträge: 1472 |
Nachdem du die id änderst musst du alle Funktionen neu ausführen. Ansonsten gibt es da keine Probleme.
Ich glaube es gab ne Wiki-Seite in der das Schadenssystem erklärt wurde. Ansonsten musst du in die xmls sehen. Jedes entity hat eine damageclass und eine armorclass, die Beziehungen dazwischen sind in der data/config/damageclasses.xml festgelegt.
Edit: Da ist auch irgendwo noch ein random factor bei, wenn ich mich richtig erinnere...
Play4FuN
|
#27 29.03.2018 17:33 Beiträge: 704 |
Sorry aber muss nochmal nachfragen
Bei Verwendung von EntityTyp-Funktionen müssen die zurückgesetzt werden, wenn ich die Map beende - ok.
Heißt das nur dieses:
mcbEMan.UnHackMalloc() S5Hook.ReloadEntities()
?
Denn in deiner Dokumentation steht zu letzterem "In general: DO NOT USE, this can easily crash the game and requires extensive testing to get it right"
(Konkret: nutze mcbEMan.SetEntityTypeMaxHealth(typ, health) also "Kategorie 3" )
Wo wäre das aufzurufen?
QuitGame
QuitApplication
LoadGame (was ist mit QuickLoad?)
RestartMap auch?
____________________
LG Play4FuN
Siedler DEdK Mapping + Scripting Tutorials
mcb
|
#28 29.03.2018 17:56 Beiträge: 1472 |
In dem Fall S5Hook.ReloadEntities() . Die Warnung ist dafür gedacht die xmls auch tatsächlich zu verändern. Da das hier aber nur ein reset ist, ist das kein Problem.
UnHackMalloc ist ein Spezialfall bei dem ich nen Vector ändere, was zurückgesetzt und der Speicher freigegeben werden muss bevor ReloadEntities aufgerufen wird. Ist im Moment nur die Serf Build slots.
Aufgerufen werden muss das bei:
QuickLoad
QuitApplication
QuitGame
GUIAction_RestartMap
MainWindow_LoadGame_DoLoadGame
Also immer, wenn die Map beendet wird.