Skip to content

Commit

Permalink
Implement Push* and Get*ByIndex
Browse files Browse the repository at this point in the history
  • Loading branch information
ntoxin66 committed May 5, 2016
1 parent e32f91b commit d55af46
Showing 1 changed file with 100 additions and 2 deletions.
102 changes: 100 additions & 2 deletions scripting/include/dynamic.inc
Expand Up @@ -53,38 +53,52 @@ native int Dynamic_GetInt(Dynamic obj, const char[] membername, int defaultvalue
native int Dynamic_SetInt(Dynamic obj, const char[] membername, int value);
native int Dynamic_GetIntByOffset(Dynamic obj, int offset, int defaultvalue=-1);
native bool Dynamic_SetIntByOffset(Dynamic obj, int offset, int value);
native int Dynamic_PushInt(Dynamic obj, int value, int count=1);
native int Dynamic_GetIntByIndex(Dynamic obj, int index, int defaultvalue=-1);

native float Dynamic_GetFloat(Dynamic obj, const char[] membername, float defaultvalue=-1.0);
native int Dynamic_SetFloat(Dynamic obj, const char[] membername, float value);
native float Dynamic_GetFloatByOffset(Dynamic obj, int offset, float defaultvalue=-1.0);
native bool Dynamic_SetFloatByOffset(Dynamic obj, int offset, float value);
native int Dynamic_PushFloat(Dynamic obj, float value, int count=1);
native float Dynamic_GetFloatByIndex(Dynamic obj, int index, float defaultvalue=-1.0);

native bool Dynamic_GetString(Dynamic obj, const char[] membername, char[] buffer, int size);
native bool Dynamic_GetString(Dynamic obj, const char[] membername, char[] buffer, int length);
native int Dynamic_SetString(Dynamic obj, const char[] membername, const char[] value, int length=0);
native int Dynamic_GetStringByOffset(Dynamic obj, int offset, char[] buffer, int size);
native int Dynamic_GetStringByOffset(Dynamic obj, int offset, char[] buffer, int length);
native bool Dynamic_SetStringByOffset(Dynamic obj, int offset, const char[] value, int length=0);
native int Dynamic_PushString(Dynamic obj, const char[] value, int count=1);
native bool Dynamic_GetStringByIndex(Dynamic obj, int index, char[] buffer, int length);
native int Dynamic_GetStringLength(Dynamic obj, const char[] membername);
native int Dynamic_GetStringLengthByOffset(Dynamic obj, int offset);

native Dynamic Dynamic_GetObject(Dynamic obj, const char[] membername);
native int Dynamic_SetObject(Dynamic obj, const char[] membername, Dynamic value);
native Dynamic Dynamic_GetObjectByOffset(Dynamic obj, int offset);
native bool Dynamic_SetObjectByOffset(Dynamic obj, int offset, Dynamic value);
native int Dynamic_PushObject(Dynamic obj, Dynamic value, int count=1);
native Dynamic Dynamic_GetObjectByIndex(Dynamic obj, int index);

native bool Dynamic_GetBool(Dynamic obj, const char[] membername, bool defaultvalue=false);
native int Dynamic_SetBool(Dynamic obj, const char[] membername, bool value);
native bool Dynamic_GetBoolByOffset(Dynamic obj, int offset, bool defaultvalue=false);
native bool Dynamic_SetBoolByOffset(Dynamic obj, int offset, bool value);
native int Dynamic_PushBool(Dynamic obj, bool value, int count=1);
native bool Dynamic_GetBoolByIndex(Dynamic obj, int index, bool defaultvalue=false);

native Handle Dynamic_GetHandle(Dynamic obj, const char[] membername);
native int Dynamic_SetHandle(Dynamic obj, const char[] membername, Handle value);
native Handle Dynamic_GetHandleByOffset(Dynamic obj, int offset);
native bool Dynamic_SetHandleByOffset(Dynamic obj, int offset, Handle value);
native int Dynamic_PushHandle(Dynamic obj, Handle value, int count=1);
native Handle Dynamic_GetHandleByIndex(Dynamic obj, int index);

native bool Dynamic_GetVector(Dynamic obj, const char[] membername, float[3] vector);
native int Dynamic_SetVector(Dynamic obj, const char[] membername, const float[3] value);
native bool Dynamic_GetVectorByOffset(Dynamic obj, int offset, float[3] vector);
native bool Dynamic_SetVectorByOffset(Dynamic obj, int offset, const float[3] value);
native int Dynamic_PushVector(Dynamic obj, const float value[3], int count=1);
native bool Dynamic_GetVectorByIndex(Dynamic obj, int index, float[3] vector);

methodmap Dynamic
{
Expand Down Expand Up @@ -164,6 +178,16 @@ methodmap Dynamic
Dynamic_SetIntByOffset(this, offset, value);
}

public int PushInt(int value, int count=1)
{
return Dynamic_PushInt(this, value, count);
}

public int GetIntByIndex(int index, int defaultvalue=-1)
{
return Dynamic_GetIntByIndex(this, index, defaultvalue);
}

public bool GetBool(const char[] membername, bool defaultvalue = false)
{
return Dynamic_GetBool(this, membername, defaultvalue);
Expand All @@ -184,6 +208,16 @@ methodmap Dynamic
Dynamic_SetBoolByOffset(this, offset, value);
}

public int PushBool(bool value, int count=1)
{
return Dynamic_PushBool(this, value, count);
}

public bool GetBoolByIndex(int index, bool defaultvalue = false)
{
return Dynamic_GetBoolByIndex(this, index, defaultvalue);
}

public float GetFloat(const char[] membername, float defaultvalue=-1.0)
{
return Dynamic_GetFloat(this, membername, defaultvalue);
Expand All @@ -204,6 +238,16 @@ methodmap Dynamic
Dynamic_SetFloatByOffset(this, offset, value);
}

public int PushFloat(float value, int count=1)
{
return Dynamic_PushFloat(this, value, count);
}

public float GetFloatByIndex(int index, float defaultvalue=-1.0)
{
return Dynamic_GetFloatByIndex(this, index, defaultvalue);
}

public bool GetString(const char[] membername, char[] buffer, int length)
{
return Dynamic_GetString(this, membername, buffer, length);
Expand All @@ -224,6 +268,16 @@ methodmap Dynamic
Dynamic_SetStringByOffset(this, offset, value, length);
}

public int PushString(const char[] value, int length, int count=1)
{
return Dynamic_PushString(this, value, count);
}

public bool GetStringByIndex(int index, char[] buffer, int length)
{
return Dynamic_GetStringByIndex(this, index, buffer, length);
}

public int GetStringLength(const char[] membername)
{
return Dynamic_GetStringLength(this, membername);
Expand Down Expand Up @@ -254,6 +308,16 @@ methodmap Dynamic
Dynamic_SetObjectByOffset(this, offset, value);
}

public int PushObject(Dynamic value, int count=1)
{
return Dynamic_PushObject(this, value, count);
}

public Dynamic GetObjectByIndex(int index)
{
return Dynamic_GetObjectByIndex(this, index);
}

public Handle GetHandle(const char[] membername)
{
return Dynamic_GetHandle(this, membername);
Expand All @@ -274,6 +338,16 @@ methodmap Dynamic
Dynamic_SetHandleByOffset(this, offset, value);
}

public int PushHandle(Handle value, int count=1)
{
return Dynamic_PushHandle(this, value, count);
}

public Handle GetHandleByIndex(int index)
{
return Dynamic_GetHandleByIndex(this, index);
}

public bool GetVector(const char[] membername, float[3] vector)
{
return Dynamic_GetVector(this, membername, vector);
Expand All @@ -294,6 +368,16 @@ methodmap Dynamic
Dynamic_SetVectorByOffset(this, offset, value);
}

public int PushVector(const float value[3], int count=1)
{
return Dynamic_PushVector(this, value, count);
}

public bool GetVectorByIndex(int index, float[3] vector)
{
return Dynamic_GetVectorByIndex(this, index, vector);
}

public void HookChanges(DynamicHookCB callback)
{
Dynamic_HookChanges(this, callback);
Expand Down Expand Up @@ -354,32 +438,46 @@ public __pl_dynamic_SetNTVOptional()
MarkNativeAsOptional("Dynamic_SetInt");
MarkNativeAsOptional("Dynamic_GetIntByOffset");
MarkNativeAsOptional("Dynamic_SetIntByOffset");
MarkNativeAsOptional("Dynamic_PushInt");
MarkNativeAsOptional("Dynamic_GetIntByIndex");
MarkNativeAsOptional("Dynamic_GetBool");
MarkNativeAsOptional("Dynamic_SetBool");
MarkNativeAsOptional("Dynamic_GetBoolByOffset");
MarkNativeAsOptional("Dynamic_SetBoolByOffset");
MarkNativeAsOptional("Dynamic_PushBool");
MarkNativeAsOptional("Dynamic_GetBoolByIndex");
MarkNativeAsOptional("Dynamic_GetFloat");
MarkNativeAsOptional("Dynamic_SetFloat");
MarkNativeAsOptional("Dynamic_GetFloatByOffset");
MarkNativeAsOptional("Dynamic_SetFloatByOffset");
MarkNativeAsOptional("Dynamic_PushFloat");
MarkNativeAsOptional("Dynamic_GetFloatByIndex");
MarkNativeAsOptional("Dynamic_GetString");
MarkNativeAsOptional("Dynamic_SetString");
MarkNativeAsOptional("Dynamic_GetStringByOffset");
MarkNativeAsOptional("Dynamic_SetStringByOffset");
MarkNativeAsOptional("Dynamic_PushString");
MarkNativeAsOptional("Dynamic_GetStringByIndex");
MarkNativeAsOptional("Dynamic_GetStringLength");
MarkNativeAsOptional("Dynamic_GetStringLengthByOffset");
MarkNativeAsOptional("Dynamic_GetObject");
MarkNativeAsOptional("Dynamic_SetObject");
MarkNativeAsOptional("Dynamic_GetObjectByOffset");
MarkNativeAsOptional("Dynamic_SetObjectByOffset");
MarkNativeAsOptional("Dynamic_PushObject");
MarkNativeAsOptional("Dynamic_GetObjectByIndex");
MarkNativeAsOptional("Dynamic_GetHandle");
MarkNativeAsOptional("Dynamic_SetHandle");
MarkNativeAsOptional("Dynamic_GetHandleByOffset");
MarkNativeAsOptional("Dynamic_SetHandleByOffset");
MarkNativeAsOptional("Dynamic_PushHandle");
MarkNativeAsOptional("Dynamic_GetHandleByIndex");
MarkNativeAsOptional("Dynamic_GetVector");
MarkNativeAsOptional("Dynamic_SetVector");
MarkNativeAsOptional("Dynamic_GetVectorByOffset");
MarkNativeAsOptional("Dynamic_SetVectorByOffset");
MarkNativeAsOptional("Dynamic_PushVector");
MarkNativeAsOptional("Dynamic_GetVectorByIndex");
MarkNativeAsOptional("Dynamic_GetCollectionSize");
MarkNativeAsOptional("Dynamic_GetMemberCount");
MarkNativeAsOptional("Dynamic_HookChanges");
Expand Down

0 comments on commit d55af46

Please sign in to comment.