Add transitional syntax support for Protobuf natives.
This commit is contained in:
parent
801b7ec9e2
commit
6b714dafe3
@ -811,6 +811,38 @@ REGISTER_NATIVES(protobufnatives)
|
||||
{"PbReadMessage", smn_PbReadMessage},
|
||||
{"PbReadRepeatedMessage", smn_PbReadRepeatedMessage},
|
||||
{"PbAddMessage", smn_PbAddMessage},
|
||||
|
||||
// Transitional syntax.
|
||||
{"Protobuf.ReadInt", smn_PbReadInt},
|
||||
{"Protobuf.ReadFloat", smn_PbReadFloat},
|
||||
{"Protobuf.ReadBool", smn_PbReadBool},
|
||||
{"Protobuf.ReadString", smn_PbReadString},
|
||||
{"Protobuf.ReadColor", smn_PbReadColor},
|
||||
{"Protobuf.ReadAngle", smn_PbReadAngle},
|
||||
{"Protobuf.ReadVector", smn_PbReadVector},
|
||||
{"Protobuf.ReadVector2D", smn_PbReadVector2D},
|
||||
{"Protobuf.GetRepeatedFieldCount", smn_PbGetRepeatedFieldCount},
|
||||
{"Protobuf.SetInt", smn_PbSetInt},
|
||||
{"Protobuf.SetFloat", smn_PbSetFloat},
|
||||
{"Protobuf.SetBool", smn_PbSetBool},
|
||||
{"Protobuf.SetString", smn_PbSetString},
|
||||
{"Protobuf.SetColor", smn_PbSetColor},
|
||||
{"Protobuf.SetAngle", smn_PbSetAngle},
|
||||
{"Protobuf.SetVector", smn_PbSetVector},
|
||||
{"Protobuf.SetVector2D", smn_PbSetVector2D},
|
||||
{"Protobuf.AddInt", smn_PbAddInt},
|
||||
{"Protobuf.AddFloat", smn_PbAddFloat},
|
||||
{"Protobuf.AddBool", smn_PbAddBool},
|
||||
{"Protobuf.AddString", smn_PbAddString},
|
||||
{"Protobuf.AddColor", smn_PbAddColor},
|
||||
{"Protobuf.AddAngle", smn_PbAddAngle},
|
||||
{"Protobuf.AddVector", smn_PbAddVector},
|
||||
{"Protobuf.AddVector2D", smn_PbAddVector2D},
|
||||
{"Protobuf.RemoveRepeatedFieldValue", smn_PbRemoveRepeatedFieldValue},
|
||||
{"Protobuf.ReadMessage", smn_PbReadMessage},
|
||||
{"Protobuf.ReadRepeatedMessage", smn_PbReadRepeatedMessage},
|
||||
{"Protobuf.AddMessage", smn_PbAddMessage},
|
||||
|
||||
{NULL, NULL}
|
||||
};
|
||||
|
||||
@ -820,7 +852,7 @@ REGISTER_NATIVES(protobufnatives)
|
||||
@@@@@@@@@@@@@@@@@@@@@
|
||||
@@@@@@@@@@@@@@@@@@@@@@@@
|
||||
@@@@@@@@ @@@@@@@@@@@@@
|
||||
@@@@@@@@ @@@@@@@@@@@@@
|
||||
@@@@@@@@ o @@@@@@@@@@@@@
|
||||
@@@@@@ @@@@@@@@@@@@@@@
|
||||
0000 @@@@@@@@@@@@@@@@@@@@@
|
||||
000000000 @@@@@@@@@@@@@@@@@@@
|
||||
|
@ -53,13 +53,14 @@ PerformBlind(client, target, amount)
|
||||
new color[4] = { 0, 0, 0, 0 };
|
||||
color[3] = amount;
|
||||
|
||||
new Handle:message = StartMessageEx(g_FadeUserMsgId, targets, 1);
|
||||
Handle message = StartMessageEx(g_FadeUserMsgId, targets, 1);
|
||||
if (GetUserMessageType() == UM_Protobuf)
|
||||
{
|
||||
PbSetInt(message, "duration", duration);
|
||||
PbSetInt(message, "hold_time", holdtime);
|
||||
PbSetInt(message, "flags", flags);
|
||||
PbSetColor(message, "clr", color);
|
||||
Protobuf pb = UserMessageToProtobuf(message);
|
||||
pb.SetInt("duration", duration);
|
||||
pb.SetInt("hold_time", holdtime);
|
||||
pb.SetInt("flags", flags);
|
||||
pb.SetColor("clr", color);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -58,14 +58,14 @@ KillDrug(client)
|
||||
new flags = (0x0001 | 0x0010);
|
||||
new color[4] = { 0, 0, 0, 0 };
|
||||
|
||||
new Handle:message = StartMessageEx(g_FadeUserMsgId, clients, 1);
|
||||
|
||||
Handle message = StartMessageEx(g_FadeUserMsgId, clients, 1);
|
||||
if (GetUserMessageType() == UM_Protobuf)
|
||||
{
|
||||
PbSetInt(message, "duration", duration);
|
||||
PbSetInt(message, "hold_time", holdtime);
|
||||
PbSetInt(message, "flags", flags);
|
||||
PbSetColor(message, "clr", color);
|
||||
Protobuf pb = UserMessageToProtobuf(message);
|
||||
pb.SetInt("duration", duration);
|
||||
pb.SetInt("hold_time", holdtime);
|
||||
pb.SetInt("flags", flags);
|
||||
pb.SetColor("clr", color);
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -177,14 +177,14 @@ public Action:Timer_Drug(Handle:timer, any:client)
|
||||
color[1] = GetRandomInt(0,255);
|
||||
color[2] = GetRandomInt(0,255);
|
||||
|
||||
new Handle:message = StartMessageEx(g_FadeUserMsgId, clients, 1);
|
||||
|
||||
Handle message = StartMessageEx(g_FadeUserMsgId, clients, 1);
|
||||
if (GetUserMessageType() == UM_Protobuf)
|
||||
{
|
||||
PbSetInt(message, "duration", duration);
|
||||
PbSetInt(message, "hold_time", holdtime);
|
||||
PbSetInt(message, "flags", flags);
|
||||
PbSetColor(message, "clr", color);
|
||||
Protobuf pb = UserMessageToProtobuf(message);
|
||||
pb.SetInt("duration", duration);
|
||||
pb.SetInt("hold_time", holdtime);
|
||||
pb.SetInt("flags", flags);
|
||||
pb.SetColor("clr", color);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -231,6 +231,36 @@ public __ext_core_SetNTVOptional()
|
||||
MarkNativeAsOptional("PbReadMessage");
|
||||
MarkNativeAsOptional("PbReadRepeatedMessage");
|
||||
MarkNativeAsOptional("PbAddMessage");
|
||||
|
||||
MarkNativeAsOptional("Protobuf.ReadInt");
|
||||
MarkNativeAsOptional("Protobuf.ReadFloat");
|
||||
MarkNativeAsOptional("Protobuf.ReadBool");
|
||||
MarkNativeAsOptional("Protobuf.ReadString");
|
||||
MarkNativeAsOptional("Protobuf.ReadColor");
|
||||
MarkNativeAsOptional("Protobuf.ReadAngle");
|
||||
MarkNativeAsOptional("Protobuf.ReadVector");
|
||||
MarkNativeAsOptional("Protobuf.ReadVector2D");
|
||||
MarkNativeAsOptional("Protobuf.GetRepeatedFieldCount");
|
||||
MarkNativeAsOptional("Protobuf.SetInt");
|
||||
MarkNativeAsOptional("Protobuf.SetFloat");
|
||||
MarkNativeAsOptional("Protobuf.SetBool");
|
||||
MarkNativeAsOptional("Protobuf.SetString");
|
||||
MarkNativeAsOptional("Protobuf.SetColor");
|
||||
MarkNativeAsOptional("Protobuf.SetAngle");
|
||||
MarkNativeAsOptional("Protobuf.SetVector");
|
||||
MarkNativeAsOptional("Protobuf.SetVector2D");
|
||||
MarkNativeAsOptional("Protobuf.AddInt");
|
||||
MarkNativeAsOptional("Protobuf.AddFloat");
|
||||
MarkNativeAsOptional("Protobuf.AddBool");
|
||||
MarkNativeAsOptional("Protobuf.AddString");
|
||||
MarkNativeAsOptional("Protobuf.AddColor");
|
||||
MarkNativeAsOptional("Protobuf.AddAngle");
|
||||
MarkNativeAsOptional("Protobuf.AddVector");
|
||||
MarkNativeAsOptional("Protobuf.AddVector2D");
|
||||
MarkNativeAsOptional("Protobuf.RemoveRepeatedFieldValue");
|
||||
MarkNativeAsOptional("Protobuf.ReadMessage");
|
||||
MarkNativeAsOptional("Protobuf.ReadRepeatedMessage");
|
||||
MarkNativeAsOptional("Protobuf.AddMessage");
|
||||
|
||||
VerifyCoreVersion();
|
||||
}
|
||||
|
@ -1,5 +1,5 @@
|
||||
/**
|
||||
* vim: set ts=4 :
|
||||
* vim: set ts=4 sw=4 tw=99 noet :
|
||||
* =============================================================================
|
||||
* SourceMod (C)2013 AlliedModders LLC. All rights reserved.
|
||||
* =============================================================================
|
||||
@ -37,6 +37,232 @@
|
||||
|
||||
#define PB_FIELD_NOT_REPEATED -1
|
||||
|
||||
methodmap Protobuf < Handle
|
||||
{
|
||||
// Reads an int32, uint32, sint32, fixed32, sfixed32, or enum value from a protobuf message.
|
||||
//
|
||||
// @param field Field name.
|
||||
// @param index Index into repeated field.
|
||||
// @return Integer value read.
|
||||
// @error Non-existent field, or incorrect field type.
|
||||
public native int ReadInt(const char[] field, int index = PB_FIELD_NOT_REPEATED);
|
||||
|
||||
// Reads a float or downcasted double from a protobuf message.
|
||||
//
|
||||
// @param field Field name.
|
||||
// @param index Index into repeated field.
|
||||
// @return Float value read.
|
||||
// @error Non-existent field, or incorrect field type.
|
||||
public native float ReadFloat(const char[] field, int index = PB_FIELD_NOT_REPEATED);
|
||||
|
||||
// Reads a bool from a protobuf message.
|
||||
//
|
||||
// @param field Field name.
|
||||
// @param index Index into repeated field.
|
||||
// @return Boolean value read.
|
||||
// @error Non-existent field, or incorrect field type.
|
||||
public native bool ReadBool(const char[] field, int index = PB_FIELD_NOT_REPEATED);
|
||||
|
||||
// Reads a string from a protobuf message.
|
||||
//
|
||||
// @param field Field name.
|
||||
// @param buffer Destination string buffer.
|
||||
// @param maxlength Maximum length of output string buffer.
|
||||
// @param index Index into repeated field.
|
||||
// @error Non-existent field, or incorrect field type.
|
||||
public native void ReadString(const char[] field, char[] buffer, int maxlength, int index = PB_FIELD_NOT_REPEATED);
|
||||
|
||||
// Reads an RGBA color value from a protobuf message.
|
||||
//
|
||||
// @param field Field name.
|
||||
// @param buffer Destination color buffer.
|
||||
// @param index Index into repeated field.
|
||||
// @error Non-existent field, or incorrect field type.
|
||||
public native void ReadColor(const char[] field, int buffer[4], int index = PB_FIELD_NOT_REPEATED);
|
||||
|
||||
// Reads an XYZ angle value from a protobuf message.
|
||||
//
|
||||
// @param field Field name.
|
||||
// @param buffer Destination angle buffer.
|
||||
// @param index Index into repeated field.
|
||||
// @error Non-existent field, or incorrect field type.
|
||||
public native void ReadAngle(const char[] field, float buffer[3], int index = PB_FIELD_NOT_REPEATED);
|
||||
|
||||
// Reads an XYZ vector value from a protobuf message.
|
||||
//
|
||||
// @param pb protobuf handle.
|
||||
// @param field Field name.
|
||||
// @param buffer Destination vector buffer.
|
||||
// @param index Index into repeated field.
|
||||
// @error Non-existent field, or incorrect field type.
|
||||
public native void ReadVector(const char[] field, float buffer[3], int index = PB_FIELD_NOT_REPEATED);
|
||||
|
||||
// Reads an XY vector value from a protobuf message.
|
||||
//
|
||||
// @param field Field name.
|
||||
// @param buffer Destination vector buffer.
|
||||
// @param index Index into repeated field.
|
||||
// @error Non-existent field, or incorrect field type.
|
||||
public native void ReadVector2D(const char[] field, float buffer[2], int index = PB_FIELD_NOT_REPEATED);
|
||||
|
||||
// Gets the number of elements in a repeated field of a protobuf message.
|
||||
//
|
||||
// @param field Field name.
|
||||
// @return Number of elements in the field.
|
||||
// @error Non-existent field, or incorrect field type.
|
||||
public native int GetRepeatedFieldCount(const char[] field);
|
||||
|
||||
// Sets an int32, uint32, sint32, fixed32, sfixed32, or enum value on a protobuf message.
|
||||
//
|
||||
// @param field Field name.
|
||||
// @param value Integer value to set.
|
||||
// @param index Index into repeated field.
|
||||
// @error Non-existent field, or incorrect field type.
|
||||
public native int SetInt(const char[] field, int value, int index = PB_FIELD_NOT_REPEATED);
|
||||
|
||||
// Sets a float or double on a protobuf message.
|
||||
//
|
||||
// @param field Field name.
|
||||
// @param value Float value to set.
|
||||
// @param index Index into repeated field.
|
||||
// @error Non-existent field, or incorrect field type.
|
||||
public native void SetFloat(const char[] field, float value, int index = PB_FIELD_NOT_REPEATED);
|
||||
|
||||
// Sets a bool on a protobuf message.
|
||||
//
|
||||
// @param field Field name.
|
||||
// @param value Boolean value to set.
|
||||
// @param index Index into repeated field.
|
||||
// @error Non-existent field, or incorrect field type.
|
||||
public native void SetBool(const char[] field, bool value, int index = PB_FIELD_NOT_REPEATED);
|
||||
|
||||
// Sets a string on a protobuf message.
|
||||
//
|
||||
// @param field Field name.
|
||||
// @param value String value to set.
|
||||
// @param index Index into repeated field.
|
||||
// @error Non-existent field, or incorrect field type.
|
||||
public native void SetString(const char[] field, const char[] value, int index = PB_FIELD_NOT_REPEATED);
|
||||
|
||||
// Sets an RGBA color on a protobuf message.
|
||||
//
|
||||
// @param field Field name.
|
||||
// @param color Color value to set.
|
||||
// @param index Index into repeated field.
|
||||
// @error Non-existent field, or incorrect field type.
|
||||
public native void SetColor(const char[] field, const int color[4], int index = PB_FIELD_NOT_REPEATED);
|
||||
|
||||
// Sets an XYZ angle on a protobuf message.
|
||||
//
|
||||
// @param field Field name.
|
||||
// @param angle Angle value to set.
|
||||
// @param index Index into repeated field.
|
||||
// @error Non-existent field, or incorrect field type.
|
||||
public native void SetAngle(const char[] field, const float angle[3], int index = PB_FIELD_NOT_REPEATED);
|
||||
|
||||
// Sets an XYZ vector on a protobuf message.
|
||||
//
|
||||
// @param field Field name.
|
||||
// @param vec Vector value to set.
|
||||
// @param index Index into repeated field.
|
||||
// @error Non-existent field, or incorrect field type.
|
||||
public native void SetVector(const char[] field, const float vec[3], int index = PB_FIELD_NOT_REPEATED);
|
||||
|
||||
// Sets an XY vector on a protobuf message.
|
||||
//
|
||||
// @param field Field name.
|
||||
// @param vec Vector value to set.
|
||||
// @param index Index into repeated field.
|
||||
// @error Non-existent field, or incorrect field type.
|
||||
public native void SetVector2D(const char[] field, const float vec[2], int index = PB_FIELD_NOT_REPEATED);
|
||||
|
||||
// Add an int32, uint32, sint32, fixed32, sfixed32, or enum value to a protobuf message repeated field.
|
||||
//
|
||||
// @param field Field name.
|
||||
// @param value Integer value to add.
|
||||
// @error Non-existent field, or incorrect field type.
|
||||
public native void AddInt(const char[] field, int value);
|
||||
|
||||
// Add a float or double to a protobuf message repeated field.
|
||||
//
|
||||
// @param field Field name.
|
||||
// @param value Float value to add.
|
||||
// @error Non-existent field, or incorrect field type.
|
||||
public native void AddFloat(const char[] field, float value);
|
||||
|
||||
// Add a bool to a protobuf message repeated field.
|
||||
//
|
||||
// @param field Field name.
|
||||
// @param value Boolean value to add.
|
||||
// @error Non-existent field, or incorrect field type.
|
||||
public native void AddBool(const char[] field, bool value);
|
||||
|
||||
// Add a string to a protobuf message repeated field.
|
||||
//
|
||||
// @param field Field name.
|
||||
// @param value String value to add.
|
||||
// @error Non-existent field, or incorrect field type.
|
||||
public native void AddString(const char[] field, const char[] value);
|
||||
|
||||
// Add an RGBA color to a protobuf message repeated field.
|
||||
//
|
||||
// @param field Field name.
|
||||
// @param color Color value to add.
|
||||
// @error Non-existent field, or incorrect field type.
|
||||
public native void AddColor(const char[] field, const int color[4]);
|
||||
|
||||
// Add an XYZ angle to a protobuf message repeated field.
|
||||
//
|
||||
// @param field Field name.
|
||||
// @param angle Angle value to add.
|
||||
// @error Non-existent field, or incorrect field type.
|
||||
public native void AddAngle(const char[] field, const float angle[3]);
|
||||
|
||||
// Add an XYZ vector to a protobuf message repeated field.
|
||||
//
|
||||
// @param field Field name.
|
||||
// @param vec Vector value to add.
|
||||
// @error Non-existent field, or incorrect field type.
|
||||
public native void AddVector(const char[] field, const float vec[3]);
|
||||
|
||||
// Add an XY vector to a protobuf message repeated field.
|
||||
//
|
||||
// @param field Field name.
|
||||
// @param vec Vector value to add.
|
||||
// @error Non-existent field, or incorrect field type.
|
||||
public native void AddVector2D(const char[] field, const float vec[2]);
|
||||
|
||||
// Removes a value by index from a protobuf message repeated field.
|
||||
//
|
||||
// @param field Field name.
|
||||
// @param index Index into repeated field.
|
||||
// @error Non-existent field, or incorrect field type.
|
||||
public native void RemoveRepeatedFieldValue(const char[] field, int index);
|
||||
|
||||
// Retrieve a handle to an embedded protobuf message in a protobuf message.
|
||||
//
|
||||
// @param field Field name.
|
||||
// @return Protobuf handle to embedded message.
|
||||
// @error Non-existent field, or incorrect field type.
|
||||
public native Protobuf ReadMessage(const char[] field);
|
||||
|
||||
// Retrieve a handle to an embedded protobuf message in a protobuf message
|
||||
// repeated field.
|
||||
//
|
||||
// @param field Field name.
|
||||
// @param index Index in the repeated field.
|
||||
// @return Protobuf handle to embedded message.
|
||||
// @error Non-existent field, or incorrect field type.
|
||||
public native Protobuf ReadRepeatedMessage(const char[] field, int index);
|
||||
|
||||
// Adds an embedded protobuf message to a protobuf message repeated field.
|
||||
//
|
||||
// @param field Field name.
|
||||
// @return Protobuf handle to added, embedded message.
|
||||
// @error Non-existent field, or incorrect field type.
|
||||
public native Protobuf AddMessage(const char[] field);
|
||||
};
|
||||
|
||||
/**
|
||||
* Reads an int32, uint32, sint32, fixed32, sfixed32, or enum value from a protobuf message.
|
||||
*
|
||||
@ -46,7 +272,7 @@
|
||||
* @return Integer value read.
|
||||
* @error Invalid or incorrect Handle, non-existent field, or incorrect field type.
|
||||
*/
|
||||
native PbReadInt(Handle:pb, const String:field[], index=PB_FIELD_NOT_REPEATED);
|
||||
native int PbReadInt(Handle pb, const char[] field, int index = PB_FIELD_NOT_REPEATED);
|
||||
|
||||
/**
|
||||
* Reads a float or downcasted double from a protobuf message.
|
||||
@ -57,7 +283,7 @@ native PbReadInt(Handle:pb, const String:field[], index=PB_FIELD_NOT_REPEATED);
|
||||
* @return Float value read.
|
||||
* @error Invalid or incorrect Handle, non-existent field, or incorrect field type.
|
||||
*/
|
||||
native Float:PbReadFloat(Handle:pb, const String:field[], index=PB_FIELD_NOT_REPEATED);
|
||||
native float PbReadFloat(Handle pb, const char[] field, int index = PB_FIELD_NOT_REPEATED);
|
||||
|
||||
/**
|
||||
* Reads a bool from a protobuf message.
|
||||
@ -68,7 +294,7 @@ native Float:PbReadFloat(Handle:pb, const String:field[], index=PB_FIELD_NOT_REP
|
||||
* @return Boolean value read.
|
||||
* @error Invalid or incorrect Handle, non-existent field, or incorrect field type.
|
||||
*/
|
||||
native bool:PbReadBool(Handle:pb, const String:field[], index=PB_FIELD_NOT_REPEATED);
|
||||
native bool PbReadBool(Handle pb, const char[] field, int index = PB_FIELD_NOT_REPEATED);
|
||||
|
||||
/**
|
||||
* Reads a string from a protobuf message.
|
||||
@ -78,10 +304,9 @@ native bool:PbReadBool(Handle:pb, const String:field[], index=PB_FIELD_NOT_REPEA
|
||||
* @param buffer Destination string buffer.
|
||||
* @param maxlength Maximum length of output string buffer.
|
||||
* @param index Index into repeated field.
|
||||
* @noreturn
|
||||
* @error Invalid or incorrect Handle, non-existent field, or incorrect field type.
|
||||
*/
|
||||
native PbReadString(Handle:pb, const String:field[], String:buffer[], maxlength, index=PB_FIELD_NOT_REPEATED);
|
||||
native void PbReadString(Handle pb, const char[] field, String:buffer[], maxlength, int index = PB_FIELD_NOT_REPEATED);
|
||||
|
||||
/**
|
||||
* Reads an RGBA color value from a protobuf message.
|
||||
@ -90,10 +315,9 @@ native PbReadString(Handle:pb, const String:field[], String:buffer[], maxlength,
|
||||
* @param field Field name.
|
||||
* @param buffer Destination color buffer.
|
||||
* @param index Index into repeated field.
|
||||
* @noreturn
|
||||
* @error Invalid or incorrect Handle, non-existent field, or incorrect field type.
|
||||
*/
|
||||
native PbReadColor(Handle:pb, const String:field[], buffer[4], index=PB_FIELD_NOT_REPEATED);
|
||||
native void PbReadColor(Handle pb, const char[] field, buffer[4], int index = PB_FIELD_NOT_REPEATED);
|
||||
|
||||
/**
|
||||
* Reads an XYZ angle value from a protobuf message.
|
||||
@ -102,10 +326,9 @@ native PbReadColor(Handle:pb, const String:field[], buffer[4], index=PB_FIELD_NO
|
||||
* @param field Field name.
|
||||
* @param buffer Destination angle buffer.
|
||||
* @param index Index into repeated field.
|
||||
* @noreturn
|
||||
* @error Invalid or incorrect Handle, non-existent field, or incorrect field type.
|
||||
*/
|
||||
native PbReadAngle(Handle:pb, const String:field[], Float:buffer[3], index=PB_FIELD_NOT_REPEATED);
|
||||
native void PbReadAngle(Handle pb, const char[] field, float buffer[3], int index = PB_FIELD_NOT_REPEATED);
|
||||
|
||||
/**
|
||||
* Reads an XYZ vector value from a protobuf message.
|
||||
@ -114,10 +337,9 @@ native PbReadAngle(Handle:pb, const String:field[], Float:buffer[3], index=PB_FI
|
||||
* @param field Field name.
|
||||
* @param buffer Destination vector buffer.
|
||||
* @param index Index into repeated field.
|
||||
* @noreturn
|
||||
* @error Invalid or incorrect Handle, non-existent field, or incorrect field type.
|
||||
*/
|
||||
native PbReadVector(Handle:pb, const String:field[], Float:buffer[3], index=PB_FIELD_NOT_REPEATED);
|
||||
native void PbReadVector(Handle pb, const char[] field, float buffer[3], int index = PB_FIELD_NOT_REPEATED);
|
||||
|
||||
/**
|
||||
* Reads an XY vector value from a protobuf message.
|
||||
@ -126,10 +348,9 @@ native PbReadVector(Handle:pb, const String:field[], Float:buffer[3], index=PB_F
|
||||
* @param field Field name.
|
||||
* @param buffer Destination vector buffer.
|
||||
* @param index Index into repeated field.
|
||||
* @noreturn
|
||||
* @error Invalid or incorrect Handle, non-existent field, or incorrect field type.
|
||||
*/
|
||||
native PbReadVector2D(Handle:pb, const String:field[], Float:buffer[2], index=PB_FIELD_NOT_REPEATED);
|
||||
native void PbReadVector2D(Handle pb, const char[] field, float buffer[2], int index = PB_FIELD_NOT_REPEATED);
|
||||
|
||||
/**
|
||||
* Gets the number of elements in a repeated field of a protobuf message.
|
||||
@ -139,7 +360,7 @@ native PbReadVector2D(Handle:pb, const String:field[], Float:buffer[2], index=PB
|
||||
* @return Number of elements in the field.
|
||||
* @error Invalid or incorrect Handle, non-existent field, or incorrect field type.
|
||||
*/
|
||||
native PbGetRepeatedFieldCount(Handle:pb, const String:field[]);
|
||||
native int PbGetRepeatedFieldCount(Handle pb, const char[] field);
|
||||
|
||||
/**
|
||||
* Sets an int32, uint32, sint32, fixed32, sfixed32, or enum value on a protobuf message.
|
||||
@ -148,10 +369,9 @@ native PbGetRepeatedFieldCount(Handle:pb, const String:field[]);
|
||||
* @param field Field name.
|
||||
* @param value Integer value to set.
|
||||
* @param index Index into repeated field.
|
||||
* @noreturn
|
||||
* @error Invalid or incorrect Handle, non-existent field, or incorrect field type.
|
||||
*/
|
||||
native PbSetInt(Handle:pb, const String:field[], value, index=PB_FIELD_NOT_REPEATED);
|
||||
native void PbSetInt(Handle pb, const char[] field, int value, int index = PB_FIELD_NOT_REPEATED);
|
||||
|
||||
/**
|
||||
* Sets a float or double on a protobuf message.
|
||||
@ -160,10 +380,9 @@ native PbSetInt(Handle:pb, const String:field[], value, index=PB_FIELD_NOT_REPEA
|
||||
* @param field Field name.
|
||||
* @param value Float value to set.
|
||||
* @param index Index into repeated field.
|
||||
* @noreturn
|
||||
* @error Invalid or incorrect Handle, non-existent field, or incorrect field type.
|
||||
*/
|
||||
native PbSetFloat(Handle:pb, const String:field[], Float:value, index=PB_FIELD_NOT_REPEATED);
|
||||
native void PbSetFloat(Handle pb, const char[] field, float value, int index = PB_FIELD_NOT_REPEATED);
|
||||
|
||||
/**
|
||||
* Sets a bool on a protobuf message.
|
||||
@ -172,10 +391,9 @@ native PbSetFloat(Handle:pb, const String:field[], Float:value, index=PB_FIELD_N
|
||||
* @param field Field name.
|
||||
* @param value Boolean value to set.
|
||||
* @param index Index into repeated field.
|
||||
* @noreturn
|
||||
* @error Invalid or incorrect Handle, non-existent field, or incorrect field type.
|
||||
*/
|
||||
native PbSetBool(Handle:pb, const String:field[], bool:value, index=PB_FIELD_NOT_REPEATED);
|
||||
native void PbSetBool(Handle pb, const char[] field, bool value, int index = PB_FIELD_NOT_REPEATED);
|
||||
|
||||
/**
|
||||
* Sets a string on a protobuf message.
|
||||
@ -184,10 +402,9 @@ native PbSetBool(Handle:pb, const String:field[], bool:value, index=PB_FIELD_NOT
|
||||
* @param field Field name.
|
||||
* @param value String value to set.
|
||||
* @param index Index into repeated field.
|
||||
* @noreturn
|
||||
* @error Invalid or incorrect Handle, non-existent field, or incorrect field type.
|
||||
*/
|
||||
native PbSetString(Handle:pb, const String:field[], const String:value[], index=PB_FIELD_NOT_REPEATED);
|
||||
native void PbSetString(Handle pb, const char[] field, const char[] value, int index = PB_FIELD_NOT_REPEATED);
|
||||
|
||||
/**
|
||||
* Sets an RGBA color on a protobuf message.
|
||||
@ -196,10 +413,9 @@ native PbSetString(Handle:pb, const String:field[], const String:value[], index=
|
||||
* @param field Field name.
|
||||
* @param color Color value to set.
|
||||
* @param index Index into repeated field.
|
||||
* @noreturn
|
||||
* @error Invalid or incorrect Handle, non-existent field, or incorrect field type.
|
||||
*/
|
||||
native PbSetColor(Handle:pb, const String:field[], const color[4], index=PB_FIELD_NOT_REPEATED);
|
||||
native void PbSetColor(Handle pb, const char[] field, const int color[4], int index = PB_FIELD_NOT_REPEATED);
|
||||
|
||||
/**
|
||||
* Sets an XYZ angle on a protobuf message.
|
||||
@ -208,10 +424,9 @@ native PbSetColor(Handle:pb, const String:field[], const color[4], index=PB_FIEL
|
||||
* @param field Field name.
|
||||
* @param angle Angle value to set.
|
||||
* @param index Index into repeated field.
|
||||
* @noreturn
|
||||
* @error Invalid or incorrect Handle, non-existent field, or incorrect field type.
|
||||
*/
|
||||
native PbSetAngle(Handle:pb, const String:field[], const Float:angle[3], index=PB_FIELD_NOT_REPEATED);
|
||||
native void PbSetAngle(Handle pb, const char[] field, const float angle[3], int index = PB_FIELD_NOT_REPEATED);
|
||||
|
||||
/**
|
||||
* Sets an XYZ vector on a protobuf message.
|
||||
@ -220,10 +435,9 @@ native PbSetAngle(Handle:pb, const String:field[], const Float:angle[3], index=P
|
||||
* @param field Field name.
|
||||
* @param vec Vector value to set.
|
||||
* @param index Index into repeated field.
|
||||
* @noreturn
|
||||
* @error Invalid or incorrect Handle, non-existent field, or incorrect field type.
|
||||
*/
|
||||
native PbSetVector(Handle:pb, const String:field[], const Float:vec[3], index=PB_FIELD_NOT_REPEATED);
|
||||
native void PbSetVector(Handle pb, const char[] field, const float vec[3], int index = PB_FIELD_NOT_REPEATED);
|
||||
|
||||
/**
|
||||
* Sets an XY vector on a protobuf message.
|
||||
@ -232,10 +446,9 @@ native PbSetVector(Handle:pb, const String:field[], const Float:vec[3], index=PB
|
||||
* @param field Field name.
|
||||
* @param vec Vector value to set.
|
||||
* @param index Index into repeated field.
|
||||
* @noreturn
|
||||
* @error Invalid or incorrect Handle, non-existent field, or incorrect field type.
|
||||
*/
|
||||
native PbSetVector2D(Handle:pb, const String:field[], const Float:vec[2], index=PB_FIELD_NOT_REPEATED);
|
||||
native void PbSetVector2D(Handle pb, const char[] field, const float vec[2], int index = PB_FIELD_NOT_REPEATED);
|
||||
|
||||
/**
|
||||
* Add an int32, uint32, sint32, fixed32, sfixed32, or enum value to a protobuf message repeated field.
|
||||
@ -243,10 +456,9 @@ native PbSetVector2D(Handle:pb, const String:field[], const Float:vec[2], index=
|
||||
* @param pb protobuf handle.
|
||||
* @param field Field name.
|
||||
* @param value Integer value to add.
|
||||
* @noreturn
|
||||
* @error Invalid or incorrect Handle, non-existent field, or incorrect field type.
|
||||
*/
|
||||
native PbAddInt(Handle:pb, const String:field[], value);
|
||||
native void PbAddInt(Handle pb, const char[] field, int value);
|
||||
|
||||
/**
|
||||
* Add a float or double to a protobuf message repeated field.
|
||||
@ -254,10 +466,9 @@ native PbAddInt(Handle:pb, const String:field[], value);
|
||||
* @param pb protobuf handle.
|
||||
* @param field Field name.
|
||||
* @param value Float value to add.
|
||||
* @noreturn
|
||||
* @error Invalid or incorrect Handle, non-existent field, or incorrect field type.
|
||||
*/
|
||||
native PbAddFloat(Handle:pb, const String:field[], Float:value);
|
||||
native void PbAddFloat(Handle pb, const char[] field, float value);
|
||||
|
||||
/**
|
||||
* Add a bool to a protobuf message repeated field.
|
||||
@ -265,10 +476,9 @@ native PbAddFloat(Handle:pb, const String:field[], Float:value);
|
||||
* @param pb protobuf handle.
|
||||
* @param field Field name.
|
||||
* @param value Boolean value to add.
|
||||
* @noreturn
|
||||
* @error Invalid or incorrect Handle, non-existent field, or incorrect field type.
|
||||
*/
|
||||
native PbAddBool(Handle:pb, const String:field[], bool:value);
|
||||
native void PbAddBool(Handle pb, const char[] field, bool value);
|
||||
|
||||
/**
|
||||
* Add a string to a protobuf message repeated field.
|
||||
@ -276,10 +486,9 @@ native PbAddBool(Handle:pb, const String:field[], bool:value);
|
||||
* @param pb protobuf handle.
|
||||
* @param field Field name.
|
||||
* @param value String value to add.
|
||||
* @noreturn
|
||||
* @error Invalid or incorrect Handle, non-existent field, or incorrect field type.
|
||||
*/
|
||||
native PbAddString(Handle:pb, const String:field[], const String:value[]);
|
||||
native void PbAddString(Handle pb, const char[] field, const char[] value);
|
||||
|
||||
/**
|
||||
* Add an RGBA color to a protobuf message repeated field.
|
||||
@ -287,10 +496,9 @@ native PbAddString(Handle:pb, const String:field[], const String:value[]);
|
||||
* @param pb protobuf handle.
|
||||
* @param field Field name.
|
||||
* @param color Color value to add.
|
||||
* @noreturn
|
||||
* @error Invalid or incorrect Handle, non-existent field, or incorrect field type.
|
||||
*/
|
||||
native PbAddColor(Handle:pb, const String:field[], const color[4]);
|
||||
native void PbAddColor(Handle pb, const char[] field, const int color[4]);
|
||||
|
||||
/**
|
||||
* Add an XYZ angle to a protobuf message repeated field.
|
||||
@ -298,10 +506,9 @@ native PbAddColor(Handle:pb, const String:field[], const color[4]);
|
||||
* @param pb protobuf handle.
|
||||
* @param field Field name.
|
||||
* @param angle Angle value to add.
|
||||
* @noreturn
|
||||
* @error Invalid or incorrect Handle, non-existent field, or incorrect field type.
|
||||
*/
|
||||
native PbAddAngle(Handle:pb, const String:field[], const Float:angle[3]);
|
||||
native void PbAddAngle(Handle pb, const char[] field, const float angle[3]);
|
||||
|
||||
/**
|
||||
* Add an XYZ vector to a protobuf message repeated field.
|
||||
@ -309,10 +516,9 @@ native PbAddAngle(Handle:pb, const String:field[], const Float:angle[3]);
|
||||
* @param pb protobuf handle.
|
||||
* @param field Field name.
|
||||
* @param vec Vector value to add.
|
||||
* @noreturn
|
||||
* @error Invalid or incorrect Handle, non-existent field, or incorrect field type.
|
||||
*/
|
||||
native PbAddVector(Handle:pb, const String:field[], const Float:vec[3]);
|
||||
native void PbAddVector(Handle pb, const char[] field, const float vec[3]);
|
||||
|
||||
/**
|
||||
* Add an XY vector to a protobuf message repeated field.
|
||||
@ -320,10 +526,9 @@ native PbAddVector(Handle:pb, const String:field[], const Float:vec[3]);
|
||||
* @param pb protobuf handle.
|
||||
* @param field Field name.
|
||||
* @param vec Vector value to add.
|
||||
* @noreturn
|
||||
* @error Invalid or incorrect Handle, non-existent field, or incorrect field type.
|
||||
*/
|
||||
native PbAddVector2D(Handle:pb, const String:field[], const Float:vec[2]);
|
||||
native void PbAddVector2D(Handle pb, const char[] field, const float vec[2]);
|
||||
|
||||
/**
|
||||
* Removes a value by index from a protobuf message repeated field.
|
||||
@ -331,10 +536,9 @@ native PbAddVector2D(Handle:pb, const String:field[], const Float:vec[2]);
|
||||
* @param pb protobuf handle.
|
||||
* @param field Field name.
|
||||
* @param index Index into repeated field.
|
||||
* @noreturn
|
||||
* @error Invalid or incorrect Handle, non-existent field, or incorrect field type.
|
||||
*/
|
||||
native PbRemoveRepeatedFieldValue(Handle:pb, const String:field[], index);
|
||||
native void PbRemoveRepeatedFieldValue(Handle pb, const char[] field, int index);
|
||||
|
||||
/**
|
||||
* Retrieve a handle to an embedded protobuf message in a protobuf message.
|
||||
@ -344,7 +548,7 @@ native PbRemoveRepeatedFieldValue(Handle:pb, const String:field[], index);
|
||||
* @return protobuf handle to embedded message.
|
||||
* @error Invalid or incorrect Handle, non-existent field, or incorrect field type.
|
||||
*/
|
||||
native Handle:PbReadMessage(Handle:pb, const String:field[]);
|
||||
native Handle PbReadMessage(Handle pb, const char[] field);
|
||||
|
||||
/**
|
||||
* Retrieve a handle to an embedded protobuf message in a protobuf message repeated field.
|
||||
@ -355,7 +559,7 @@ native Handle:PbReadMessage(Handle:pb, const String:field[]);
|
||||
* @return protobuf handle to embedded message.
|
||||
* @error Invalid or incorrect Handle, non-existent field, or incorrect field type.
|
||||
*/
|
||||
native Handle:PbReadRepeatedMessage(Handle:pb, const String:field[], index);
|
||||
native Handle PbReadRepeatedMessage(Handle pb, const char[] field, int index);
|
||||
|
||||
/**
|
||||
* Adds an embedded protobuf message to a protobuf message repeated field.
|
||||
@ -365,4 +569,4 @@ native Handle:PbReadRepeatedMessage(Handle:pb, const String:field[], index);
|
||||
* @return protobuf handle to added, embedded message.
|
||||
* @error Invalid or incorrect Handle, non-existent field, or incorrect field type.
|
||||
*/
|
||||
native Handle:PbAddMessage(Handle:pb, const String:field[]);
|
||||
native Handle PbAddMessage(Handle pb, const char[] field);
|
||||
|
@ -70,6 +70,13 @@ enum UserMessageType
|
||||
*/
|
||||
native UserMessageType:GetUserMessageType();
|
||||
|
||||
stock Protobuf UserMessageToProtobuf(Handle msg)
|
||||
{
|
||||
if (GetUserMessageType() != UM_Protobuf)
|
||||
return null;
|
||||
return Protobuf:msg;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the ID of a given message, or -1 on failure.
|
||||
*
|
||||
|
Loading…
Reference in New Issue
Block a user