api method signature documentation

This commit is contained in:
nilllzz 2018-01-10 02:21:20 +01:00
parent a8a531ae64
commit 819049a416
16 changed files with 253 additions and 36 deletions

View File

@ -87,6 +87,7 @@
<Content Include="Scripts\underwatercave\rocks\Clipboard Text %2823-10-16, 22.00.44%29.txt">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
<Compile Include="World\ActionScript\V3\ApiMethodSignatureAttribute.vb" />
<Compile Include="World\ActionScript\V3\Prototypes\CameraPrototype.vb" />
<Compile Include="World\ActionScript\V3\Prototypes\DaycarePrototype.vb" />
<None Include="maps\battle\fortune\altering.dat">
@ -12682,7 +12683,6 @@
<Compile Include="World\ActionScript\V2\ScriptV2.vb" />
<Compile Include="World\ActionScript\V3\ApiClasses\ApiClass.vb" />
<Compile Include="World\ActionScript\V3\ApiClasses\ApiClassAttribute.vb" />
<Compile Include="World\ActionScript\V3\ApiClasses\ApiClassMethodAttribute.vb" />
<Compile Include="World\ActionScript\V3\ApiClasses\Chat.vb" />
<Compile Include="World\ActionScript\V3\ApiClasses\Text.vb" />
<Compile Include="World\ActionScript\V3\ParamHelper.vb" />

View File

@ -1,10 +0,0 @@
Namespace Scripting.V3.ApiClasses
<AttributeUsage(AttributeTargets.Method)>
Friend Class ApiClassMethodAttribute
Inherits Attribute
End Class
End Namespace

View File

@ -7,7 +7,9 @@ Namespace Scripting.V3.ApiClasses
<ApiClass("Chat")>
Friend NotInheritable Class ChatWrapper
<ApiClassMethod>
Inherits ApiClass
<ApiMethodSignature>
Public Shared Function clear(processor As ScriptProcessor, parameters As SObject()) As SObject
Chat.ClearChat()
Return ScriptInAdapter.GetUndefined(processor)

View File

@ -9,7 +9,7 @@ Namespace Scripting.V3.ApiClasses
Inherits ApiClass
<ApiClassMethod>
<ApiMethodSignature("message", GetType(String))>
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
<ApiClassMethod>
<ApiMethodSignature(GetType(String), "fontName", GetType(String))>
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
<ApiClassMethod>
<ApiMethodSignature("message", GetType(String))>
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
<ApiClassMethod>
<ApiMethodSignature("message", GetType(String))>
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
<ApiClassMethod>
<ApiMethodSignature("colorType", GetType(String))>
<ApiMethodSignature({"red", "green", "blue", "alpha"}, {GetType(Integer), GetType(Integer), GetType(Integer), GetType(Integer)}, 1)>
Public Shared Function setColor(processor As ScriptProcessor, parameters As SObject()) As SObject
Dim netObjects As Object() = Nothing

View File

@ -0,0 +1,64 @@
Imports Kolben.Adapters
Namespace Scripting.V3
<AttributeUsage(AttributeTargets.Method, AllowMultiple:=True)>
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

View File

@ -20,6 +20,7 @@ Namespace Scripting.V3.Prototypes
End Sub
<ScriptFunction(ScriptFunctionType.Constructor, VariableName:="constructor")>
<ApiMethodSignature("id", GetType(Integer))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="name")>
<ApiMethodSignature(GetType(String))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="id")>
<ApiMethodSignature(GetType(Integer))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="description")>
<ApiMethodSignature(GetType(String))>
Public Shared Function GetDescription(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object
Dim a = GetAbility(This)

View File

@ -51,6 +51,7 @@ Namespace Scripting.V3.Prototypes
End Sub
<ScriptFunction(ScriptFunctionType.Standard, VariableName:="reset")>
<ApiMethodSignature()>
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
<ScriptFunction(ScriptFunctionType.Standard, VariableName:="startWild")>
<ApiMethodSignature({"pokemon", "music", "introType"}, {GetType(PokemonPrototype), GetType(String), GetType(Integer)}, 2)>
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
<ScriptFunction(ScriptFunctionType.Standard, VariableName:="startTrainer")>
<ApiMethodSignature("trainer", GetType(TrainerPrototype))>
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
<ScriptFunction(ScriptFunctionType.Standard, VariableName:="encounterTrainer")>
<ApiMethodSignature("trainer", GetType(TrainerPrototype))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="wonLast", IsStatic:=True)>
<ApiMethodSignature(GetType(Boolean))>
Public Shared Function WonLast(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object
Return BattleSystem.Battle.Won

View File

@ -37,16 +37,18 @@ Namespace Scripting.V3.Prototypes
End Function
<ScriptFunction(ScriptFunctionType.Standard, VariableName:="update", IsStatic:=True)>
<ApiMethodSignature()>
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
<ScriptFunction(ScriptFunctionType.Standard, VariableName:="setBehindPlayer", IsStatic:=True)>
<ApiMethodSignature(GetType(Double))>
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"
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="position", IsStatic:=True)>
<ApiMethodSignature(GetType(Vector3Prototype))>
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
<ScriptFunction(ScriptFunctionType.Setter, VariableName:="position", IsStatic:=True)>
<ApiMethodSignature(GetType(Vector3Prototype))>
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"
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="yaw", IsStatic:=True)>
<ApiMethodSignature(GetType(Double))>
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
<ScriptFunction(ScriptFunctionType.Setter, VariableName:="yaw", IsStatic:=True)>
<ApiMethodSignature(GetType(Double))>
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"
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="pitch", IsStatic:=True)>
<ApiMethodSignature(GetType(Double))>
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
<ScriptFunction(ScriptFunctionType.Setter, VariableName:="pitch", IsStatic:=True)>
<ApiMethodSignature(GetType(Double))>
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"
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="x", IsStatic:=True)>
<ApiMethodSignature(GetType(Double))>
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
<ScriptFunction(ScriptFunctionType.Setter, VariableName:="x", IsStatic:=True)>
<ApiMethodSignature(GetType(Double))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="y", IsStatic:=True)>
<ApiMethodSignature(GetType(Double))>
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
<ScriptFunction(ScriptFunctionType.Setter, VariableName:="y", IsStatic:=True)>
<ApiMethodSignature(GetType(Double))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="z", IsStatic:=True)>
<ApiMethodSignature(GetType(Double))>
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
<ScriptFunction(ScriptFunctionType.Setter, VariableName:="z", IsStatic:=True)>
<ApiMethodSignature(GetType(Double))>
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"
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="thirdPerson", IsStatic:=True)>
<ApiMethodSignature(GetType(Boolean))>
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
<ScriptFunction(ScriptFunctionType.Setter, VariableName:="thirdPerson", IsStatic:=True)>
<ApiMethodSignature(GetType(Boolean))>
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"
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="fixed", IsStatic:=True)>
<ApiMethodSignature(GetType(Boolean))>
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
<ScriptFunction(ScriptFunctionType.Setter, VariableName:="fixed", IsStatic:=True)>
<ApiMethodSignature(GetType(Boolean))>
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"
<ScriptFunction(ScriptFunctionType.Standard, VariableName:="setupFocus", IsStatic:=True)>
<ApiMethodSignature({"type", "id"}, {GetType(String), GetType(Integer)})>
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
<ScriptFunction(ScriptFunctionType.Standard, VariableName:="resetFocus", IsStatic:=True)>
<ApiMethodSignature()>
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
<ScriptFunction(ScriptFunctionType.Setter, VariableName:="focusType", IsStatic:=True)>
<ApiMethodSignature("type", GetType(String))>
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
<ScriptFunction(ScriptFunctionType.Setter, VariableName:="focusId", IsStatic:=True)>
<ApiMethodSignature("id", GetType(Integer))>
Public Shared Function SetFocusId(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object
If TypeContract.Ensure(parameters, GetType(Integer)) Then

View File

@ -16,6 +16,7 @@ Namespace Scripting.V3.Prototypes
End Sub
<ScriptFunction(ScriptFunctionType.Constructor, VariableName:="constructor")>
<ApiMethodSignature("id", GetType(Integer))>
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
<ScriptFunction(ScriptFunctionType.IndexerGet, VariableName:="indexerGet")>
<ApiMethodSignature({GetType(PokemonPrototype), GetType(NetUndefined)}, "pokemonIndex", GetType(Integer))>
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
<ScriptFunction(ScriptFunctionType.Standard, VariableName:="getGrownLevels")>
<ApiMethodSignature(GetType(Integer), "pokemonIndex", GetType(Integer))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="canBreed")>
<ApiMethodSignature(GetType(Boolean))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="hasEgg")>
<ApiMethodSignature(GetType(Boolean))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="pokemonCount")>
<ApiMethodSignature(GetType(Integer))>
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
<ScriptFunction(ScriptFunctionType.Standard, VariableName:="takeEgg")>
<ApiMethodSignature({GetType(PokemonPrototype), GetType(NetUndefined)})>
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
<ScriptFunction(ScriptFunctionType.Standard, VariableName:="takePokemon")>
<ApiMethodSignature({GetType(PokemonPrototype), GetType(NetUndefined)}, "pokemonIndex", GetType(Integer))>
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
<ScriptFunction(ScriptFunctionType.Standard, VariableName:="putPokemon")>
<ApiMethodSignature({"daycareIndex", "pokemon"}, {GetType(Integer), GetType(PokemonPrototype)})>
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
<ScriptFunction(ScriptFunctionType.Standard, VariableName:="cleanData")>
<ApiMethodSignature()>
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
<ScriptFunction(ScriptFunctionType.Standard, VariableName:="clear")>
<ApiMethodSignature()>
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
<ScriptFunction(ScriptFunctionType.Standard, VariableName:="call")>
<ApiMethodSignature()>
Public Shared Function CallPhone(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object
Dim daycareId = CType(This, DaycarePrototype).daycareId

View File

@ -16,6 +16,7 @@ Namespace Scripting.V3.Prototypes
#Region "Position"
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="position")>
<ApiMethodSignature(GetType(Vector3Prototype))>
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
<ScriptFunction(ScriptFunctionType.Setter, VariableName:="position")>
<ApiMethodSignature(GetType(Vector3Prototype))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="x", IsStatic:=True)>
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="x")>
<ApiMethodSignature(GetType(Double))>
Public Shared Function GetX(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object
Return GetEntity(This).Position.X
End Function
<ScriptFunction(ScriptFunctionType.Setter, VariableName:="x", IsStatic:=True)>
<ScriptFunction(ScriptFunctionType.Setter, VariableName:="x")>
<ApiMethodSignature(GetType(Double))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="y", IsStatic:=True)>
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="y")>
<ApiMethodSignature(GetType(Double))>
Public Shared Function GetY(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object
Return GetEntity(This).Position.Y
End Function
<ScriptFunction(ScriptFunctionType.Setter, VariableName:="y", IsStatic:=True)>
<ScriptFunction(ScriptFunctionType.Setter, VariableName:="y")>
<ApiMethodSignature(GetType(Double))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="z", IsStatic:=True)>
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="z")>
<ApiMethodSignature(GetType(Double))>
Public Shared Function GetZ(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object
Return GetEntity(This).Position.Z
End Function
<ScriptFunction(ScriptFunctionType.Setter, VariableName:="z", IsStatic:=True)>
<ScriptFunction(ScriptFunctionType.Setter, VariableName:="z")>
<ApiMethodSignature(GetType(Double))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="scale")>
<ApiMethodSignature(GetType(Vector3Prototype))>
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
<ScriptFunction(ScriptFunctionType.Setter, VariableName:="scale")>
<ApiMethodSignature(GetType(Vector3Prototype))>
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
<ScriptFunction(ScriptFunctionType.Standard, VariableName:="remove")>
<ApiMethodSignature()>
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

View File

@ -20,6 +20,8 @@ Namespace Scripting.V3.Prototypes
End Sub
<ScriptFunction(ScriptFunctionType.Constructor, VariableName:="constructor")>
<ApiMethodSignature({"id", "additionalData"}, {GetType(Integer), GetType(String)}, 1)>
<ApiMethodSignature({"name", "additionalData"}, {GetType(String), GetType(String)}, 1)>
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

View File

@ -21,6 +21,7 @@ Namespace Scripting.V3.Prototypes
End Sub
<ScriptFunction(ScriptFunctionType.Constructor, VariableName:="constructor")>
<ApiMethodSignature("id", GetType(Integer))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="name")>
<ApiMethodSignature(GetType(String))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="pp")>
<ApiMethodSignature(GetType(Integer))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="maxPP")>
<ApiMethodSignature(GetType(Integer))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="id")>
<ApiMethodSignature(GetType(Integer))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="category")>
<ApiMethodSignature(GetType(String))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="description")>
<ApiMethodSignature(GetType(String))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="type")>
<ApiMethodSignature(GetType(String))>
Public Shared Function GetElementType(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object
Dim attack = GetAttack(This)

View File

@ -20,6 +20,8 @@ Namespace Scripting.V3.Prototypes
End Sub
<ScriptFunction(ScriptFunctionType.Constructor, VariableName:="constructor")>
<ApiMethodSignature("rawData", GetType(String))>
<ApiMethodSignature({"id", "level", "additionalData"}, {GetType(Integer), GetType(Integer), GetType(String)}, 1)>
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
<ScriptFunction(ScriptFunctionType.Standard, VariableName:="getLegendaryIds", IsStatic:=True)>
<ApiMethodSignature(GetType(Integer()))>
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
<ScriptFunction(ScriptFunctionType.Standard, VariableName:="getSprite")>
<ApiMethodSignature(GetType(String))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="id")>
<ApiMethodSignature(GetType(Integer))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="name")>
<ApiMethodSignature(GetType(String))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="translatedName")>
<ApiMethodSignature(GetType(String))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="nickname")>
<ApiMethodSignature(GetType(String))>
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
<ScriptFunction(ScriptFunctionType.Setter, VariableName:="nickname")>
<ApiMethodSignature(GetType(String))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="displayName")>
<ApiMethodSignature(GetType(String))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="isShiny")>
<ApiMethodSignature(GetType(Boolean))>
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
<ScriptFunction(ScriptFunctionType.Setter, VariableName:="isShiny")>
<ApiMethodSignature(GetType(Boolean))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="canSwim")>
<ApiMethodSignature(GetType(Boolean))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="level")>
<ApiMethodSignature(GetType(Integer))>
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
<ScriptFunction(ScriptFunctionType.Standard, VariableName:="cry")>
<ApiMethodSignature()>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="additionalData")>
<ApiMethodSignature(GetType(String))>
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
<ScriptFunction(ScriptFunctionType.Setter, VariableName:="additionalData")>
<ApiMethodSignature(GetType(String))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="isEgg")>
<ApiMethodSignature(GetType(Boolean))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="nature")>
<ApiMethodSignature(GetType(Integer))>
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
<ScriptFunction(ScriptFunctionType.Setter, VariableName:="nature")>
<ApiMethodSignature(GetType(Integer))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="friendship")>
<ApiMethodSignature(GetType(Integer))>
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
<ScriptFunction(ScriptFunctionType.Setter, VariableName:="friendship")>
<ApiMethodSignature(GetType(Integer))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="ot")>
<ApiMethodSignature(GetType(String))>
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
<ScriptFunction(ScriptFunctionType.Setter, VariableName:="ot")>
<ApiMethodSignature(GetType(String))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="catchTrainer")>
<ApiMethodSignature(GetType(String))>
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
<ScriptFunction(ScriptFunctionType.Setter, VariableName:="catchTrainer")>
<ApiMethodSignature(GetType(String))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="catchMethod")>
<ApiMethodSignature(GetType(String))>
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
<ScriptFunction(ScriptFunctionType.Setter, VariableName:="catchMethod")>
<ApiMethodSignature(GetType(String))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="catchLocation")>
<ApiMethodSignature(GetType(String))>
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
<ScriptFunction(ScriptFunctionType.Setter, VariableName:="catchLocation")>
<ApiMethodSignature(GetType(String))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="catchBall")>
<ApiMethodSignature(GetType(ItemPrototype))>
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
<ScriptFunction(ScriptFunctionType.Setter, VariableName:="catchBall")>
<ApiMethodSignature(GetType(ItemPrototype))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="item")>
<ApiMethodSignature(GetType(ItemPrototype))>
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
<ScriptFunction(ScriptFunctionType.Setter, VariableName:="item")>
<ApiMethodSignature(GetType(ItemPrototype))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="gender")>
<ApiMethodSignature(GetType(String))>
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
<ScriptFunction(ScriptFunctionType.Setter, VariableName:="gender")>
<ApiMethodSignature(GetType(String))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="ability")>
<ApiMethodSignature(GetType(AbilityPrototype))>
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
<ScriptFunction(ScriptFunctionType.Setter, VariableName:="ability")>
<ApiMethodSignature(GetType(AbilityPrototype))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="types")>
<ApiMethodSignature(GetType(String()))>
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"
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="stats")>
<ApiMethodSignature(GetType(Object))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="EVs")>
<ApiMethodSignature(GetType(Object))>
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
<ScriptFunction(ScriptFunctionType.Standard, VariableName:="setEV")>
<ApiMethodSignature({"evType", "value"}, {GetType(String), GetType(Integer)})>
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
<ScriptFunction(ScriptFunctionType.Standard, VariableName:="setIV")>
<ApiMethodSignature({"ivType", "value"}, {GetType(String), GetType(Integer)})>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="giveEVs")>
<ApiMethodSignature(GetType(Object))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="IVs")>
<ApiMethodSignature(GetType(Object))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="hp")>
<ApiMethodSignature(GetType(Integer))>
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
<ScriptFunction(ScriptFunctionType.Setter, VariableName:="hp")>
<ApiMethodSignature(GetType(Integer))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="exp")>
<ApiMethodSignature(GetType(Integer))>
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
<ScriptFunction(ScriptFunctionType.Setter, VariableName:="exp")>
<ApiMethodSignature(GetType(Integer))>
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
<ScriptFunction(ScriptFunctionType.Setter, VariableName:="heal")>
#End Region
#Region "Moves"
<ScriptFunction(ScriptFunctionType.Standard, VariableName:="heal")>
<ApiMethodSignature("hp", GetType(Integer), 1)>
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"
<ScriptFunction(ScriptFunctionType.Standard, VariableName:="getMoves")>
<ApiMethodSignature(GetType(MovePrototype()))>
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
<ScriptFunction(ScriptFunctionType.Standard, VariableName:="removeMoveAt")>
<ApiMethodSignature("moveIndex", GetType(Integer))>
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
<ScriptFunction(ScriptFunctionType.Standard, VariableName:="clearMoves")>
<ApiMethodSignature()>
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
<ScriptFunction(ScriptFunctionType.Standard, VariableName:="addMove")>
<ApiMethodSignature("move", GetType(MovePrototype))>
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
<ScriptFunction(ScriptFunctionType.Standard, VariableName:="reload")>
<ApiMethodSignature()>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="status")>
<ApiMethodSignature(GetType(String))>
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
<ScriptFunction(ScriptFunctionType.Setter, VariableName:="status")>
<ApiMethodSignature(GetType(String))>
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
<ScriptFunction(ScriptFunctionType.Standard, VariableName:="canEvolve")>
<ApiMethodSignature(GetType(Boolean), {"trigger", "evolutionArg"}, {GetType(String), GetType(String)}, 2)>
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)

View File

@ -16,6 +16,7 @@ Namespace Scripting.V3.Prototypes
End Sub
<ScriptFunction(ScriptFunctionType.Constructor, VariableName:="constructor")>
<ApiMethodSignature("file", GetType(String))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="defeatMessage")>
<ApiMethodSignature(GetType(String))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="introMessage")>
<ApiMethodSignature(GetType(String))>
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
<ScriptFunction(ScriptFunctionType.Getter, VariableName:="outroMessage")>
<ApiMethodSignature(GetType(String))>
Public Shared Function GetOutroMessage(This As Object, objLink As ScriptObjectLink, parameters As Object()) As Object
Dim wrapper = CType(This, TrainerPrototype)

View File

@ -34,6 +34,7 @@ Namespace Scripting.V3.Prototypes
End Sub
<ScriptFunction(ScriptFunctionType.Constructor, VariableName:="constructor")>
<ApiMethodSignature({"x", "y", "z"}, {GetType(Double), GetType(Double), GetType(Double)}, 3)>
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

View File

@ -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)