|
13 | 13 | void CLuaFireDefs::LoadFunctions(void) |
14 | 14 | { |
15 | 15 | CLuaCFunctions::AddFunction("createFire", CLuaFireDefs::CreateFire); |
16 | | - CLuaCFunctions::AddFunction("extinguishFireInRadius", CLuaFireDefs::ExtinguishFireInRadius); |
17 | | - CLuaCFunctions::AddFunction("extinguishAllFires", CLuaFireDefs::ExtinguishAllFires); |
| 16 | + CLuaCFunctions::AddFunction("extinguishFire", CLuaFireDefs::ExtinguishFire); |
18 | 17 | } |
19 | 18 |
|
20 | 19 | int CLuaFireDefs::CreateFire(lua_State* luaVM) |
@@ -42,34 +41,34 @@ int CLuaFireDefs::CreateFire(lua_State* luaVM) |
42 | 41 | return 1; |
43 | 42 | } |
44 | 43 |
|
45 | | -int CLuaFireDefs::ExtinguishFireInRadius(lua_State* luaVM) |
| 44 | +int CLuaFireDefs::ExtinguishFire(lua_State* luaVM) |
46 | 45 | { |
47 | | - // bool extinguishFireInRadius ( float x, float y, float z [, float radius = 1.0 ] ) |
48 | | - CVector vecPosition; |
49 | | - float fRadius; |
50 | | - |
| 46 | + // bool extinguishFire ( [ float x, float y, float z [, float radius = 1.0 ] ] ) |
51 | 47 | CScriptArgReader argStream(luaVM); |
52 | | - argStream.ReadVector3D(vecPosition); |
53 | | - argStream.ReadNumber(fRadius, 1.0f); |
54 | 48 |
|
55 | | - if (!argStream.HasErrors()) |
| 49 | + if (argStream.NextIsVector3D()) |
56 | 50 | { |
57 | | - if (CStaticFunctionDefinitions::ExtinguishFireInRadius(vecPosition, fRadius)) |
| 51 | + CVector vecPosition; |
| 52 | + float fRadius; |
| 53 | + |
| 54 | + argStream.ReadVector3D(vecPosition); |
| 55 | + argStream.ReadNumber(fRadius, 1.0f); |
| 56 | + |
| 57 | + if (!argStream.HasErrors()) |
58 | 58 | { |
59 | | - lua_pushboolean(luaVM, true); |
60 | | - return 1; |
| 59 | + if (CStaticFunctionDefinitions::ExtinguishFireInRadius(vecPosition, fRadius)) |
| 60 | + { |
| 61 | + lua_pushboolean(luaVM, true); |
| 62 | + return 1; |
| 63 | + } |
61 | 64 | } |
62 | | - } |
63 | | - else |
64 | | - m_pScriptDebugging->LogCustom(luaVM, argStream.GetFullErrorMessage()); |
| 65 | + else |
| 66 | + m_pScriptDebugging->LogCustom(luaVM, argStream.GetFullErrorMessage()); |
65 | 67 |
|
66 | | - lua_pushboolean(luaVM, false); |
67 | | - return 1; |
68 | | -} |
| 68 | + lua_pushboolean(luaVM, false); |
| 69 | + return 1; |
| 70 | + } |
69 | 71 |
|
70 | | -int CLuaFireDefs::ExtinguishAllFires(lua_State* luaVM) |
71 | | -{ |
72 | | - // bool extinguishAllFires ( ) |
73 | 72 | lua_pushboolean(luaVM, CStaticFunctionDefinitions::ExtinguishAllFires()); |
74 | 73 | return 1; |
75 | 74 | } |
0 commit comments