Könntet ihr mir mal bei diesem Beispiel-Script von Bethesda helfen ?

Daimonicon

Neuankömmling
Hallo,

ich wollte gerne das folgende Beispiel-Script für meine Mod übernehmen:

http://www.creationkit.com/Complete...ync_between_the_two_moons_and_day_of_the_week

Hier sagt er mir beim Versuch zu speichern das ihn folgendes stört.

G:\Tools und Apps\Steam\steamapps\common\skyrim\Data\Scripts\Source\temp\ExtendedUtility.psc(17,1): type mismatch while assigning to a int (cast missing or types unrelated)
G:\Tools und Apps\Steam\steamapps\common\skyrim\Data\Scripts\Source\temp\ExtendedUtility.psc(19,1): cannot return a float from getpassedgamedays, the types do not match (cast missing or types unrelated)
G:\Tools und Apps\Steam\steamapps\common\skyrim\Data\Scripts\Source\temp\ExtendedUtility.psc(33,1): type mismatch while assigning to a int (cast missing or types unrelated)
G:\Tools und Apps\Steam\steamapps\common\skyrim\Data\Scripts\Source\temp\ExtendedUtility.psc(35,1): cannot return a float from getpassedgamehours, the types do not match (cast missing or types unrelated)

Zu meiner Überraschung da ich mit Papyrus noch am Anfang stehe akzeptiert der Compiler meine Korrekturmassnahmen aber anscheinend (siehe Anhang). Ich würde allerdings gerne mal wissen ob das jemand Ahnung hat mal durchsehen könnte ?

Das wäre meine korrigierte Fassung die der Compiler akzeptiert - Ich hatte nur die "int" über die er gemeckert hat in "float" umgeschrieben bzw. umgekehrt.

Code:
Scriptname ExtendedUtility
 
Import Utility
Import Math

;/++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+    GetPassedGameDays() returns the number of fully passed ingame days
+    as int.
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++/;
 
Int Function GetPassedGameDays() Global
    Float GameTime
    Float GameDaysPassed
 
    GameTime = GetCurrentGameTime()
    GameDaysPassed = GameTime As int
    Return GameDaysPassed as int
EndFunction
 
;/++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+    GetPassedGameHours() returns the number of passed ingame hours of
+    the current day as int.
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++/;
 
Int Function GetPassedGameHours() Global
    Float GameTime
    Float GameHoursPassed
 
    GameTime = GetCurrentGameTime()
    GameHoursPassed = ((GameTime - (GameTime As Int)) * 24) As Int
    Return GameHoursPassed as int
EndFunction
 
;/++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+    GetCurrentMoonPhase() returns an integer representing the current
+    phase of the moons Masser and Secunda based on "SkyrimClimate".
+    Between 12:00 AM and 11:59 AM the phase during the night from last
+    day to this day is returned. Between 12:00 PM and 11:59 PM the
+    phase for the night from this day to next day is returned. Thus
+    a call to the function at night (between 8:00 PM and 6:00 AM) all-
+    ways returns the currently visible phase.
+
+    The returncodes are as follows:
+        0 - Full Moon
+        1 - Decreasing Moon 3/4
+        2 - Decreasing Moon 1/2
+        3 - Decreasing Moon 1/4
+        4 - New Moon
+        5 - Increasing Moon 1/4
+        6 - Increasing Moon 1/2
+        7 - Increasing Moon 3/4
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++/;
 
Int Function GetCurrentMoonphase() Global
    Int GameDaysPassed
    Int GameHoursPassed
    Int PhaseTest
    GameDaysPassed = GetPassedGameDays()
    GameHoursPassed = GetPassedGameHours()
 
    If (GameHoursPassed >= 12.0)
        GameDaysPassed += 1
    EndIf
 
    PhaseTest = GameDaysPassed % 24 ;A full cycle through the moon phases lasts 24 days
    If PhaseTest >= 22 || PhaseTest == 0
        Return 7
    ElseIf PhaseTest < 4
        Return 0
    ElseIf PhaseTest < 7
        Return 1
    ElseIf PhaseTest < 10
        Return 2
    ElseIF PhaseTest < 13
        Return 3
    ElseIf PhaseTest < 16
        Return 4
    ElseIf PhaseTest < 19
        Return 5
    ElseIf PhaseTest < 22
        Return 6
    EndIf
 
EndFunction
 
;/++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+    GetCurrentMoonSync() returns an integer that resembles where we are
+    in the 5 day cycle of the Snychronisation between the moons.
+
+   Returncodes:
+        0 - Moons appear at the same time
+        1 - not yet determined how far ahead/behind Secunda is
+        2 - not yet determined how far ahead/behind Secunda is
+        3 - not yet determined how far ahead/behind Secunda is
+        4 - not yet determined how far ahead/behind Secunda is
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++/;
 
Int Function GetCurrentMoonSync() Global
    Int GameDaysPassed
    Int GameHoursPassed
    Int SyncTest
 
    GameDaysPassed = GetPassedGameDays()
    GameHoursPassed = GetPassedGameHours()
    If (GameHoursPassed >= 12)
        GameDaysPassed += 1
    EndIf
    SyncTest = GameDaysPassed % 5
    return SyncTest
EndFunction
 
;/++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+    GetDayOfWeek() returns the current ingame day of the week as int.
+    
+    Returncodes:
+        0 - Sundas
+        1 - Morndas
+        2 - Tirdas
+        3 - Middas
+        4 - Turdas
+        5 - Fredas
+        6 - Loredas
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++/;
 
Int Function GetDayOfWeek()
    Int GameDaysPassed
 
    GameDaysPassed = GetPassedGameDays()
    return GameDaysPassed % 7
EndFunction

Wenn ich das korrekt verstanden habe auf den Seiten wo ich versucht hatte die Fehler zu goggeln - Dann ist das eine ältere Schreibweise von Papyrus weshalb der aktuelle Compiler meckert ?

gruss Patrick