diff --git a/2.5DHero/2.5DHero/2.5DHero.vbproj b/2.5DHero/2.5DHero/2.5DHero.vbproj index f0110ccfc..4157e72d6 100644 --- a/2.5DHero/2.5DHero/2.5DHero.vbproj +++ b/2.5DHero/2.5DHero/2.5DHero.vbproj @@ -87,6 +87,7 @@ Always + @@ -12682,7 +12683,6 @@ - diff --git a/2.5DHero/2.5DHero/World/ActionScript/V3/ApiClasses/ApiClassMethodAttribute.vb b/2.5DHero/2.5DHero/World/ActionScript/V3/ApiClasses/ApiClassMethodAttribute.vb deleted file mode 100644 index 8998c6b0c..000000000 --- a/2.5DHero/2.5DHero/World/ActionScript/V3/ApiClasses/ApiClassMethodAttribute.vb +++ /dev/null @@ -1,10 +0,0 @@ -Namespace Scripting.V3.ApiClasses - - - Friend Class ApiClassMethodAttribute - - Inherits Attribute - - End Class - -End Namespace diff --git a/2.5DHero/2.5DHero/World/ActionScript/V3/ApiClasses/Chat.vb b/2.5DHero/2.5DHero/World/ActionScript/V3/ApiClasses/Chat.vb index 30f7ec5ca..e6d1b18b5 100644 --- a/2.5DHero/2.5DHero/World/ActionScript/V3/ApiClasses/Chat.vb +++ b/2.5DHero/2.5DHero/World/ActionScript/V3/ApiClasses/Chat.vb @@ -7,7 +7,9 @@ Namespace Scripting.V3.ApiClasses Friend NotInheritable Class ChatWrapper - + Inherits ApiClass + + Public Shared Function clear(processor As ScriptProcessor, parameters As SObject()) As SObject Chat.ClearChat() Return ScriptInAdapter.GetUndefined(processor) diff --git a/2.5DHero/2.5DHero/World/ActionScript/V3/ApiClasses/Text.vb b/2.5DHero/2.5DHero/World/ActionScript/V3/ApiClasses/Text.vb index 101ed0756..a47723402 100644 --- a/2.5DHero/2.5DHero/World/ActionScript/V3/ApiClasses/Text.vb +++ b/2.5DHero/2.5DHero/World/ActionScript/V3/ApiClasses/Text.vb @@ -9,7 +9,7 @@ Namespace Scripting.V3.ApiClasses Inherits ApiClass - + Public Shared Function show(processor As ScriptProcessor, parameters As SObject()) As SObject Dim netObjects As Object() = Nothing @@ -26,7 +26,7 @@ Namespace Scripting.V3.ApiClasses End Function - + Public Shared Function setFont(processor As ScriptProcessor, parameters As SObject()) As SObject Dim netObjects = New Object(0) {} @@ -46,7 +46,7 @@ Namespace Scripting.V3.ApiClasses End Function - + Public Shared Function debug(processor As ScriptProcessor, parameters As SObject()) As SObject Dim netObjects = New Object(0) {} @@ -61,7 +61,7 @@ Namespace Scripting.V3.ApiClasses End Function - + Public Shared Function log(processor As ScriptProcessor, parameters As SObject()) As SObject Dim netObjects = New Object(0) {} @@ -76,7 +76,8 @@ Namespace Scripting.V3.ApiClasses End Function - + + Public Shared Function setColor(processor As ScriptProcessor, parameters As SObject()) As SObject Dim netObjects As Object() = Nothing diff --git a/2.5DHero/2.5DHero/World/ActionScript/V3/ApiMethodSignatureAttribute.vb b/2.5DHero/2.5DHero/World/ActionScript/V3/ApiMethodSignatureAttribute.vb new file mode 100644 index 000000000..600164f07 --- /dev/null +++ b/2.5DHero/2.5DHero/World/ActionScript/V3/ApiMethodSignatureAttribute.vb @@ -0,0 +1,64 @@ +Imports Kolben.Adapters + +Namespace Scripting.V3 + + + Friend Class ApiMethodSignatureAttribute + + Inherits Attribute + + Public Property ReturnType As Type() + Public Property ParamNames As String() + Public Property ParamTypes As Type() + Public Property OptionalNum As Integer + + Public Sub New(returnType As Type(), paramNames As String(), paramTypes As Type(), optionalNum As Integer) + Me.ReturnType = returnType + Me.ParamNames = paramNames + Me.ParamTypes = paramTypes + Me.OptionalNum = optionalNum + End Sub + + Public Sub New() + Me.New({GetType(NetUndefined)}, {}, {}, 0) + End Sub + + Public Sub New(returnType As Type) + Me.New({returnType}, {}, {}, 0) + End Sub + + Public Sub New(returnType As Type()) + Me.New(returnType, {}, {}, 0) + End Sub + + Public Sub New(paramNames As String(), paramTypes As Type()) + Me.New({GetType(NetUndefined)}, paramNames, paramTypes, 0) + End Sub + + Public Sub New(paramNames As String(), paramTypes As Type(), optionalNum As Integer) + Me.New({GetType(NetUndefined)}, paramNames, paramTypes, optionalNum) + End Sub + + Public Sub New(paramName As String, paramType As Type) + Me.New({GetType(NetUndefined)}, {paramName}, {paramType}, 0) + End Sub + + Public Sub New(paramName As String, paramType As Type, optionalNum As Integer) + Me.New({GetType(NetUndefined)}, {paramName}, {paramType}, optionalNum) + End Sub + + Public Sub New(returnType As Type, paramName As String, paramType As Type) + Me.New({returnType}, {paramName}, {paramType}, 0) + End Sub + + Public Sub New(returnType As Type, paramNames As String(), paramTypes As Type(), optionalNum As Integer) + Me.New({returnType}, paramNames, paramTypes, optionalNum) + End Sub + + Public Sub New(returnTypes As Type(), paramName As String, paramType As Type) + Me.New(returnTypes, {paramName}, {paramType}, 0) + End Sub + + End Class + +End Namespace diff --git a/2.5DHero/2.5DHero/World/ActionScript/V3/Prototypes/AbilityPrototype.vb b/2.5DHero/2.5DHero/World/ActionScript/V3/Prototypes/AbilityPrototype.vb index 8f8ffd601..219277c85 100644 --- a/2.5DHero/2.5DHero/World/ActionScript/V3/Prototypes/AbilityPrototype.vb +++ b/2.5DHero/2.5DHero/World/ActionScript/V3/Prototypes/AbilityPrototype.vb @@ -20,6 +20,7 @@ Namespace Scripting.V3.Prototypes End Sub + Public Shared Function Constructor(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, GetType(Integer)) Then @@ -33,6 +34,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetName(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim a = GetAbility(This) @@ -41,6 +43,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetId(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim a = GetAbility(This) @@ -49,6 +52,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetDescription(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim a = GetAbility(This) diff --git a/2.5DHero/2.5DHero/World/ActionScript/V3/Prototypes/BattlePrototype.vb b/2.5DHero/2.5DHero/World/ActionScript/V3/Prototypes/BattlePrototype.vb index 28720c68e..67ab022c9 100644 --- a/2.5DHero/2.5DHero/World/ActionScript/V3/Prototypes/BattlePrototype.vb +++ b/2.5DHero/2.5DHero/World/ActionScript/V3/Prototypes/BattlePrototype.vb @@ -51,6 +51,7 @@ Namespace Scripting.V3.Prototypes End Sub + Public Shared Function Reset(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object objLink.SetMember("canRun", True) @@ -69,6 +70,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function StartWild(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, {GetType(PokemonPrototype), GetType(String), GetType(Integer)}, 2) Then @@ -103,6 +105,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function StartTrainer(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, GetType(TrainerPrototype)) Then @@ -129,6 +132,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function EncounterTrainer(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, GetType(TrainerPrototype)) Then @@ -184,6 +188,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function WonLast(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Return BattleSystem.Battle.Won diff --git a/2.5DHero/2.5DHero/World/ActionScript/V3/Prototypes/CameraPrototype.vb b/2.5DHero/2.5DHero/World/ActionScript/V3/Prototypes/CameraPrototype.vb index 82b7cd609..26c530d56 100644 --- a/2.5DHero/2.5DHero/World/ActionScript/V3/Prototypes/CameraPrototype.vb +++ b/2.5DHero/2.5DHero/World/ActionScript/V3/Prototypes/CameraPrototype.vb @@ -37,16 +37,18 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function Update(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object UpdateCamera(True) ScriptManager.Instance.WaitFrames(1) - Return Nothing + Return NetUndefined.Instance End Function + Public Shared Function SetBehindPlayer(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim facing = Screen.Camera.GetPlayerFacingDirection() * MathHelper.PiOver2 @@ -60,6 +62,7 @@ Namespace Scripting.V3.Prototypes #Region "Position" + Public Shared Function GetPosition(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim position = GetCamera().ThirdPersonOffset @@ -68,6 +71,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function SetPosition(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, {GetType(Vector3Prototype)}) Then @@ -90,6 +94,7 @@ Namespace Scripting.V3.Prototypes #Region "Yaw" + Public Shared Function GetYaw(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Return GetCamera().Yaw @@ -97,6 +102,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function SetYaw(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, {TypeContract.Number}) Then @@ -115,6 +121,7 @@ Namespace Scripting.V3.Prototypes #Region "Pitch" + Public Shared Function GetPitch(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Return GetCamera().Pitch @@ -122,6 +129,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function SetPitch(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, {TypeContract.Number}) Then @@ -140,6 +148,7 @@ Namespace Scripting.V3.Prototypes #Region "X, Y, Z" + Public Shared Function GetX(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Return GetCamera().ThirdPersonOffset.X @@ -147,6 +156,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function SetX(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, {TypeContract.Number}) Then @@ -161,6 +171,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetY(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Return GetCamera().ThirdPersonOffset.Y @@ -168,6 +179,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function SetY(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, {TypeContract.Number}) Then @@ -182,6 +194,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetZ(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Return GetCamera().ThirdPersonOffset.Z @@ -189,6 +202,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function SetZ(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, {TypeContract.Number}) Then @@ -207,6 +221,7 @@ Namespace Scripting.V3.Prototypes #Region "ThirdPerson" + Public Shared Function GetThirdPerson(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Return GetCamera().ThirdPerson @@ -214,6 +229,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function SetThirdPerson(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, GetType(Boolean)) Then @@ -231,6 +247,7 @@ Namespace Scripting.V3.Prototypes #Region "Fixed" + Public Shared Function GetFixed(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Return GetCamera().Fixed @@ -238,6 +255,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function SetFixed(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, GetType(Boolean)) Then @@ -255,6 +273,7 @@ Namespace Scripting.V3.Prototypes #Region "Focus" + Public Shared Function SetupFocus(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, {GetType(String), GetType(Integer)}) Then @@ -275,6 +294,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function ResetFocus(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object GetCamera().SetupFocus(OverworldCamera.CameraFocusTypes.Player, -1) @@ -285,6 +305,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function SetFocusType(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, GetType(String)) Then @@ -299,6 +320,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function SetFocusId(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, GetType(Integer)) Then diff --git a/2.5DHero/2.5DHero/World/ActionScript/V3/Prototypes/DaycarePrototype.vb b/2.5DHero/2.5DHero/World/ActionScript/V3/Prototypes/DaycarePrototype.vb index de59c668a..ad0512f5e 100644 --- a/2.5DHero/2.5DHero/World/ActionScript/V3/Prototypes/DaycarePrototype.vb +++ b/2.5DHero/2.5DHero/World/ActionScript/V3/Prototypes/DaycarePrototype.vb @@ -16,6 +16,7 @@ Namespace Scripting.V3.Prototypes End Sub + Public Shared Function Constructor(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, GetType(Integer)) Then @@ -29,6 +30,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function IndexerGet(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim pokemonIndex = CType(parameters(0), Integer) @@ -50,6 +52,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetGrownLevels(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, {GetType(Integer)}) Then @@ -79,6 +82,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetCanBreed(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim daycareId = CType(This, DaycarePrototype).daycareId @@ -87,6 +91,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetHasEgg(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim daycareId = CType(This, DaycarePrototype).daycareId @@ -112,6 +117,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetPokemonCount(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim daycareId = CType(This, DaycarePrototype).daycareId @@ -121,6 +127,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function TakeEgg(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim daycareId = CType(This, DaycarePrototype).daycareId @@ -141,7 +148,7 @@ Namespace Scripting.V3.Prototypes If eggPokemon Is Nothing Then - Return Nothing + Return NetUndefined.Instance Else Core.Player.DaycareData = newData @@ -152,6 +159,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function TakePokemon(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, GetType(Integer)) Then @@ -181,7 +189,7 @@ Namespace Scripting.V3.Prototypes Next If takenPokemon Is Nothing Then - Return Nothing + Return NetUndefined.Instance Else Core.Player.DaycareData = newData @@ -196,6 +204,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function PutPokemon(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, {GetType(Integer), GetType(PokemonPrototype)}) Then @@ -218,6 +227,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function CleanData(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim daycareId = CType(This, DaycarePrototype).daycareId @@ -258,6 +268,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function Clear(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim daycareId = CType(This, DaycarePrototype).daycareId @@ -279,6 +290,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function CallPhone(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim daycareId = CType(This, DaycarePrototype).daycareId diff --git a/2.5DHero/2.5DHero/World/ActionScript/V3/Prototypes/EntityPrototype.vb b/2.5DHero/2.5DHero/World/ActionScript/V3/Prototypes/EntityPrototype.vb index bb41d6b2f..4fc562276 100644 --- a/2.5DHero/2.5DHero/World/ActionScript/V3/Prototypes/EntityPrototype.vb +++ b/2.5DHero/2.5DHero/World/ActionScript/V3/Prototypes/EntityPrototype.vb @@ -16,6 +16,7 @@ Namespace Scripting.V3.Prototypes #Region "Position" + Public Shared Function GetPosition(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim entity = GetEntity(This) @@ -24,12 +25,14 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function SetPosition(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, GetType(Vector3Prototype)) Then Dim entity = GetEntity(This) entity.Position = CType(parameters(0), Vector3Prototype).ToVector3() + entity.CreatedWorld = False End If @@ -37,14 +40,16 @@ Namespace Scripting.V3.Prototypes End Function - + + Public Shared Function GetX(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Return GetEntity(This).Position.X End Function - + + Public Shared Function SetX(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, {TypeContract.Number}) Then @@ -57,14 +62,16 @@ Namespace Scripting.V3.Prototypes End Function - + + Public Shared Function GetY(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Return GetEntity(This).Position.Y End Function - + + Public Shared Function SetY(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, {TypeContract.Number}) Then @@ -77,14 +84,16 @@ Namespace Scripting.V3.Prototypes End Function - + + Public Shared Function GetZ(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Return GetEntity(This).Position.Z End Function - + + Public Shared Function SetZ(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, {TypeContract.Number}) Then @@ -99,6 +108,41 @@ Namespace Scripting.V3.Prototypes #End Region + + + Public Shared Function GetScale(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object + + Dim entity = GetEntity(This) + Return New Vector3Prototype(entity.Scale) + + End Function + + + + Public Shared Function SetScale(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object + + If TypeContract.Ensure(parameters, GetType(Vector3Prototype)) Then + + Dim entity = GetEntity(This) + entity.Scale = CType(parameters(0), Vector3Prototype).ToVector3() + entity.CreatedWorld = False + + End If + + Return NetUndefined.Instance + + End Function + + + + Public Shared Function Remove(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object + + Dim entity = GetEntity(This) + entity.CanBeRemoved = True + Return NetUndefined.Instance + + End Function + End Class End Namespace diff --git a/2.5DHero/2.5DHero/World/ActionScript/V3/Prototypes/ItemPrototype.vb b/2.5DHero/2.5DHero/World/ActionScript/V3/Prototypes/ItemPrototype.vb index 8e9a6ba1a..96a0acbeb 100644 --- a/2.5DHero/2.5DHero/World/ActionScript/V3/Prototypes/ItemPrototype.vb +++ b/2.5DHero/2.5DHero/World/ActionScript/V3/Prototypes/ItemPrototype.vb @@ -20,6 +20,8 @@ Namespace Scripting.V3.Prototypes End Sub + + Public Shared Function Constructor(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, {GetType(Integer), GetType(String)}, 1) Then diff --git a/2.5DHero/2.5DHero/World/ActionScript/V3/Prototypes/MovePrototype.vb b/2.5DHero/2.5DHero/World/ActionScript/V3/Prototypes/MovePrototype.vb index 4ba42cb34..a39514022 100644 --- a/2.5DHero/2.5DHero/World/ActionScript/V3/Prototypes/MovePrototype.vb +++ b/2.5DHero/2.5DHero/World/ActionScript/V3/Prototypes/MovePrototype.vb @@ -21,6 +21,7 @@ Namespace Scripting.V3.Prototypes End Sub + Public Shared Function Constructor(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, GetType(Integer)) Then @@ -34,6 +35,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetName(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim attack = GetAttack(This) @@ -42,6 +44,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetPP(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim attack = GetAttack(This) @@ -50,6 +53,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetMaxPP(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim attack = GetAttack(This) @@ -58,6 +62,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetId(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim attack = GetAttack(This) @@ -66,6 +71,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetCategory(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim attack = GetAttack(This) @@ -74,6 +80,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetDescription(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim attack = GetAttack(This) @@ -82,6 +89,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetElementType(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim attack = GetAttack(This) diff --git a/2.5DHero/2.5DHero/World/ActionScript/V3/Prototypes/PokemonPrototype.vb b/2.5DHero/2.5DHero/World/ActionScript/V3/Prototypes/PokemonPrototype.vb index 22c943b77..f30e72773 100644 --- a/2.5DHero/2.5DHero/World/ActionScript/V3/Prototypes/PokemonPrototype.vb +++ b/2.5DHero/2.5DHero/World/ActionScript/V3/Prototypes/PokemonPrototype.vb @@ -20,6 +20,8 @@ Namespace Scripting.V3.Prototypes End Sub + + Public Shared Function Constructor(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If parameters.Length = 1 AndAlso TypeContract.Ensure(parameters, GetType(String)) Then @@ -47,6 +49,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetLegendaryIds(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Return Pokemon.Legendaries @@ -54,6 +57,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetOverworldSprite(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim p = GetPokemon(This) @@ -62,6 +66,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetId(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim p = GetPokemon(This) @@ -70,6 +75,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetName(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim p = GetPokemon(This) @@ -78,6 +84,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetTranslatedName(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim p = GetPokemon(This) @@ -86,6 +93,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetNickname(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim p = GetPokemon(This) @@ -94,6 +102,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function SetNickname(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, GetType(String)) Then @@ -108,6 +117,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetDisplayName(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim p = GetPokemon(This) @@ -116,6 +126,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetIsShiny(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim p = GetPokemon(This) @@ -124,6 +135,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function SetIsShiny(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, GetType(Boolean)) Then @@ -138,6 +150,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetCanSwim(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim p = GetPokemon(This) @@ -146,6 +159,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetLevel(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim p = GetPokemon(This) @@ -154,6 +168,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function PlayCry(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim p = GetPokemon(This) @@ -163,6 +178,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetAdditionalData(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim p = GetPokemon(This) @@ -171,6 +187,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function SetAdditionalData(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, GetType(String)) Then @@ -185,6 +202,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetIsEgg(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim p = GetPokemon(This) @@ -193,14 +211,16 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetNature(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim p = GetPokemon(This) - Return p.Nature.ToString() + Return CInt(p.Nature) End Function + Public Shared Function SetNature(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, GetType(Integer)) Then @@ -215,6 +235,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetFriendship(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim p = GetPokemon(This) @@ -223,6 +244,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function SetFriendship(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, GetType(Integer)) Then @@ -237,6 +259,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetOT(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim p = GetPokemon(This) @@ -245,6 +268,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function SetOT(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, GetType(String)) Then @@ -259,6 +283,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetCatchTrainer(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim p = GetPokemon(This) @@ -267,6 +292,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function SetCatchTrainer(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, GetType(String)) Then @@ -281,6 +307,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetCatchMethod(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim p = GetPokemon(This) @@ -289,6 +316,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function SetCatchMethod(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, GetType(String)) Then @@ -303,6 +331,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetCatchLocation(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim p = GetPokemon(This) @@ -311,6 +340,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function SetCatchLocation(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, GetType(String)) Then @@ -325,6 +355,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetCatchBall(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim p = GetPokemon(This) @@ -333,6 +364,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function SetCatchBall(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, GetType(ItemPrototype)) Then @@ -347,6 +379,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetItem(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim p = GetPokemon(This) @@ -360,6 +393,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function SetItem(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, GetType(ItemPrototype)) Then @@ -382,14 +416,16 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetGender(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim p = GetPokemon(This) - Return p.Gender + Return p.Gender.ToString() End Function + Public Shared Function SetGender(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, GetType(String)) Then @@ -410,6 +446,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetAbility(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim p = GetPokemon(This) @@ -418,6 +455,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function SetAbility(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, GetType(AbilityPrototype)) Then @@ -432,6 +470,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetTypes(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim p = GetPokemon(This) @@ -447,6 +486,7 @@ Namespace Scripting.V3.Prototypes #Region "Stats" + Public Shared Function GetStats(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim p = GetPokemon(This) @@ -464,6 +504,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetEVs(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim p = GetPokemon(This) @@ -480,6 +521,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function SetEV(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, {GetType(String), GetType(Integer)}) Then @@ -511,6 +553,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function SetIV(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, {GetType(String), GetType(Integer)}) Then @@ -542,6 +585,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetGiveEVs(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim p = GetPokemon(This) @@ -558,6 +602,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetIVs(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim p = GetPokemon(This) @@ -574,6 +619,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetHP(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim p = GetPokemon(This) @@ -582,6 +628,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function SetHP(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, GetType(Integer)) Then @@ -596,6 +643,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetExp(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim p = GetPokemon(This) @@ -604,6 +652,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function SetExp(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, GetType(Integer)) Then @@ -617,7 +666,12 @@ Namespace Scripting.V3.Prototypes End Function - +#End Region + +#Region "Moves" + + + Public Shared Function Heal(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, GetType(Integer), 1) Then @@ -632,11 +686,8 @@ Namespace Scripting.V3.Prototypes End Function -#End Region - -#Region "Moves" - + Public Shared Function GetMoves(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim p = GetPokemon(This) @@ -647,6 +698,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function RemoveMoveAt(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, GetType(Integer)) Then @@ -665,6 +717,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function ClearMoves(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim p = GetPokemon(This) @@ -675,6 +728,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function AddMove(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, GetType(MovePrototype)) Then @@ -696,6 +750,7 @@ Namespace Scripting.V3.Prototypes #End Region + Public Shared Function ReloadDefinitions(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim p = GetPokemon(This) @@ -706,14 +761,16 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetStatus(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim p = GetPokemon(This) - Return p.Status + Return p.Status.ToString() End Function + Public Shared Function SetStatus(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, GetType(String)) Then @@ -734,9 +791,10 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function CanEvolve(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object - If TypeContract.Ensure(parameters, GetType(String)) Then + If TypeContract.Ensure(parameters, {GetType(String), GetType(String)}, 2) Then Dim helper = New ParamHelper(parameters) diff --git a/2.5DHero/2.5DHero/World/ActionScript/V3/Prototypes/TrainerProtoype.vb b/2.5DHero/2.5DHero/World/ActionScript/V3/Prototypes/TrainerProtoype.vb index e5487d2d3..2cce3cfee 100644 --- a/2.5DHero/2.5DHero/World/ActionScript/V3/Prototypes/TrainerProtoype.vb +++ b/2.5DHero/2.5DHero/World/ActionScript/V3/Prototypes/TrainerProtoype.vb @@ -16,6 +16,7 @@ Namespace Scripting.V3.Prototypes End Sub + Public Shared Function Constructor(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, {GetType(String)}) Then @@ -30,6 +31,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetDefeatMessage(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim wrapper = CType(This, TrainerPrototype) @@ -40,6 +42,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetIntroMessage(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim wrapper = CType(This, TrainerPrototype) @@ -50,6 +53,7 @@ Namespace Scripting.V3.Prototypes End Function + Public Shared Function GetOutroMessage(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object Dim wrapper = CType(This, TrainerPrototype) diff --git a/2.5DHero/2.5DHero/World/ActionScript/V3/Prototypes/Vector3Prototype.vb b/2.5DHero/2.5DHero/World/ActionScript/V3/Prototypes/Vector3Prototype.vb index 2142b9756..0f8002302 100644 --- a/2.5DHero/2.5DHero/World/ActionScript/V3/Prototypes/Vector3Prototype.vb +++ b/2.5DHero/2.5DHero/World/ActionScript/V3/Prototypes/Vector3Prototype.vb @@ -34,6 +34,7 @@ Namespace Scripting.V3.Prototypes End Sub + Public Shared Function Constructor(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object If TypeContract.Ensure(parameters, {TypeContract.Number, TypeContract.Number, TypeContract.Number}, 3) Then diff --git a/2.5DHero/2.5DHero/World/ActionScript/V3/ScriptManager.vb b/2.5DHero/2.5DHero/World/ActionScript/V3/ScriptManager.vb index 9b96c71ff..9a72ac208 100644 --- a/2.5DHero/2.5DHero/World/ActionScript/V3/ScriptManager.vb +++ b/2.5DHero/2.5DHero/World/ActionScript/V3/ScriptManager.vb @@ -186,7 +186,7 @@ Namespace Scripting.V3 End Function) Dim attr = CType(o.GetCustomAttribute(GetType(ApiClassAttribute)), ApiClassAttribute) Dim methods = o.GetMethods(BindingFlags.Public Or BindingFlags.Static).Where(Function(m As MethodInfo) - Return m.GetCustomAttributes(GetType(ApiClassMethodAttribute), True).Length > 0 + Return m.GetCustomAttributes(GetType(ApiMethodSignatureAttribute), True).Length > 0 End Function).ToArray() If methods.Length > 0 Then _apiClasses.Add(attr.ClassName, methods)