|
dvander@601
|
1 |
#include <sourcemod> |
|
dvander@601
|
2 |
|
|
dvander@601
|
3 |
native TestNative1(gaben, ...); |
|
dvander@601
|
4 |
native TestNative2(String:buffer[]); |
|
dvander@601
|
5 |
native TestNative3(value1, &value2); |
|
dvander@601
|
6 |
native TestNative4(const input[], output[], size); |
|
dvander@601
|
7 |
native TestNative5(bool:local, String:buffer[], maxlength, const String:fmt[], {Handle,Float,String,_}:...); |
|
dvander@601
|
8 |
|
|
dvander@601
|
9 |
public Plugin:myinfo = |
|
dvander@601
|
10 |
{ |
|
dvander@601
|
11 |
name = "FakeNative Testing Lab #2", |
|
dvander@601
|
12 |
author = "AlliedModders LLC", |
|
dvander@601
|
13 |
description = "Test suite #2 for dynamic natives", |
|
dvander@601
|
14 |
version = "1.0.0.0", |
|
dvander@601
|
15 |
url = "http://www.sourcemod.net/" |
|
dvander@601
|
16 |
}; |
|
dvander@601
|
17 |
|
|
dvander@601
|
18 |
public OnPluginStart() |
|
dvander@601
|
19 |
{ |
|
dvander@601
|
20 |
RegServerCmd("test_native1", Test_Native1); |
|
dvander@601
|
21 |
RegServerCmd("test_native2", Test_Native2); |
|
dvander@601
|
22 |
RegServerCmd("test_native3", Test_Native3); |
|
dvander@601
|
23 |
RegServerCmd("test_native4", Test_Native4); |
|
dvander@601
|
24 |
RegServerCmd("test_native5", Test_Native5); |
|
dvander@601
|
25 |
} |
|
dvander@601
|
26 |
|
|
dvander@601
|
27 |
public Action:Test_Native1(args) |
|
dvander@601
|
28 |
{ |
|
dvander@601
|
29 |
PrintToServer("Returned: %d", TestNative1(1)); |
|
dvander@601
|
30 |
PrintToServer("Returned: %d", TestNative1(1,2)); |
|
dvander@601
|
31 |
PrintToServer("Returned: %d", TestNative1(1,2,3,4)); |
|
dvander@601
|
32 |
|
|
dvander@601
|
33 |
return Plugin_Handled; |
|
dvander@601
|
34 |
} |
|
dvander@601
|
35 |
|
|
dvander@601
|
36 |
public Action:Test_Native2(args) |
|
dvander@601
|
37 |
{ |
|
dvander@601
|
38 |
new String:buffer[] = "IBM"; |
|
dvander@601
|
39 |
|
|
dvander@601
|
40 |
PrintToServer("Before: %s", buffer); |
|
dvander@601
|
41 |
|
|
dvander@601
|
42 |
TestNative2(buffer); |
|
dvander@601
|
43 |
|
|
dvander@601
|
44 |
PrintToServer("AfteR: %s", buffer); |
|
dvander@601
|
45 |
|
|
dvander@601
|
46 |
return Plugin_Handled; |
|
dvander@601
|
47 |
} |
|
dvander@601
|
48 |
|
|
dvander@601
|
49 |
public Action:Test_Native3(args) |
|
dvander@601
|
50 |
{ |
|
dvander@601
|
51 |
new value1 = 5, value2 = 6 |
|
dvander@601
|
52 |
|
|
dvander@601
|
53 |
PrintToServer("Before: %d, %d", value1, value2); |
|
dvander@601
|
54 |
|
|
dvander@601
|
55 |
TestNative3(value1, value2); |
|
dvander@601
|
56 |
|
|
dvander@601
|
57 |
PrintToServer("After: %d, %d", value1, value2); |
|
dvander@601
|
58 |
|
|
dvander@601
|
59 |
return Plugin_Handled; |
|
dvander@601
|
60 |
} |
|
dvander@601
|
61 |
|
|
dvander@601
|
62 |
public Action:Test_Native4(args) |
|
dvander@601
|
63 |
{ |
|
dvander@601
|
64 |
new input[5] = {0, 1, 2, 3, 4}; |
|
dvander@601
|
65 |
new output[5]; |
|
dvander@601
|
66 |
|
|
dvander@601
|
67 |
TestNative4(input, output, 5); |
|
dvander@601
|
68 |
|
|
dvander@601
|
69 |
PrintToServer("[0=%d] [1=%d] [2=%d] [3=%d] [4=%d]", input[0], input[1], input[2], input[3], input[4]); |
|
dvander@601
|
70 |
PrintToServer("[0=%d] [1=%d] [2=%d] [3=%d] [4=%d]", output[0], output[1], output[2], output[3], output[4]); |
|
dvander@601
|
71 |
|
|
dvander@601
|
72 |
return Plugin_Handled; |
|
dvander@601
|
73 |
} |
|
dvander@601
|
74 |
|
|
dvander@601
|
75 |
public Action:Test_Native5(args) |
|
dvander@601
|
76 |
{ |
|
dvander@601
|
77 |
new String:buffer1[512]; |
|
dvander@601
|
78 |
new String:buffer2[512]; |
|
dvander@601
|
79 |
|
|
dvander@601
|
80 |
TestNative5(true, buffer1, sizeof(buffer1), "%d gabens in the %s", 50, "gabpark"); |
|
dvander@601
|
81 |
TestNative5(true, buffer2, sizeof(buffer2), "%d gabens in the %s", 50, "gabpark"); |
|
dvander@601
|
82 |
|
|
dvander@601
|
83 |
PrintToServer("Test 1: %s", buffer1); |
|
dvander@601
|
84 |
PrintToServer("Test 2: %s", buffer2); |
|
dvander@601
|
85 |
|
|
dvander@601
|
86 |
return Plugin_Handled; |
|
dvander@601
|
87 |
} |