Scriptbefehle zur Wettersteuerung
Quelle: Scripting für Dummies
Das gegenwärtige Wetter bestimmen
GetCurrentWeather (returns short)
Gibt den Wetter-Typ wie in der Tabelle aus.
If ( GetCurrentWeather == 1)
[it's cloudy]
0 | Clear | Klarer Himmel |
1 | Cloudy | Wolkig |
2 | Foggy | Nebel |
3 | Overcast | Bedeckt |
4 | Rain | Regen |
5 | Thunder | Gewitter |
6 | Ash | Aschesturm |
7 | Blight | Peststurm |
8 | Snow | Schnee |
9 | Blizzard | ~ |
8 und 9 nur mit Bloodmoon
Beispiel-Skript:
Bethesda nutzte dies, um die Banner im Wind bewegen zu lassen, entsprechend dem Wetter-Typ:
begin OutsideBanner
;this script is for a banner object outside that
;animates in the wind.
;Idle is still, Idle2 is a little breeze,
;and Idle3 is a large breeze
short ran
if ( MenuMode == 0 )
set ran to random 100
if ( ran < 30 ) ;30% chance the flag does something new
;this will check the weather in the future
if ( GetCurrentWeather >= 5 ) ;thunder, ash, or blight
LoopGroup, Idle3, 5
endif
;the last anim called in this script is the one it will play
if ( ran <= 10 )
PlayGroup, Idle
elseif ( GetCurrentWeather < 5 )
PlayGroup, Idle2
endif
endif
endif
Wetter-Ändern
ChangeWeather, "RegionID", short_Type_Enum
ChangeWeather, "West Gash Region", 4
Diese Funktion ändert das Wetter in der bezeichneten Region zum durch TypeEnum spezifizierten Wetter-Typ
und ändert sich wieder entsprechend der Regions-Einstellungen nach der Zeit, die durch das Spiel gesetzt
wurde (ich nehme an, dass dies im Morrowind.ini-File in der Weather-Sektion geschieht. Bei mir sehen die
Einträge folgendermaßen aus: Hours Between Weather Changes=20
Wetter-Einstellungen für eine Region ändern
ModRegion, "RegionID", clear_enum, cloudy_enum, foggy_enum, overcast_enum, rain_enum, thunder_enum, ash_enum, blight_enum
ModRegion, "West Gash Region", 10, 20, 10, 5, 5, 40, 10, 0
Ändert die Wetter-Chancen für die RegionID.
Benutzt, um Wetter zu überwinden oder permanent einem Gebiet zuzufügen.
Die Werte müssen zusammen 100 ergeben, oder es wird unkorrekte Ergebnisse geben.
Mit Bloodmoon:
ModRegion, "RegionID", clear_enum, cloudy_enum, foggy_enum, overcast_enum, rain_enum, thunder_enum, ash_enum, blight_enum, snow_enum, blizzard_enum
ModRegion, "Thirsk Region", 10, 20, 15, 5, 10, 0, 0, 15, 20, 5