forked from Mirrors/openclonk
Script: Reimplement GameCall in C4Script
parent
f38670abc3
commit
a62e556b63
|
@ -26,4 +26,11 @@ static const Action = {
|
|||
Directions = 1,
|
||||
Step = 1,
|
||||
Procedure = DFA_NONE,
|
||||
};
|
||||
};
|
||||
|
||||
global func GameCall(string fn) {
|
||||
if (!fn) return;
|
||||
var f = Scenario[fn];
|
||||
if (!f) return;
|
||||
return Scenario->Call(f, ...);
|
||||
}
|
||||
|
|
|
@ -1060,17 +1060,6 @@ C4Object* FnObject(C4PropList * _this, long iNumber)
|
|||
// See FnObjectNumber
|
||||
}
|
||||
|
||||
static C4Value FnGameCall(C4PropList * _this, C4Value * Pars)
|
||||
{
|
||||
C4String * fn = Pars[0].getStr();
|
||||
if (!fn) return C4Value();
|
||||
|
||||
// copy parameters
|
||||
C4AulParSet ParSet(&Pars[1], 9);
|
||||
// Call
|
||||
return ::GameScript.Call(fn->GetCStr(), &ParSet, true);
|
||||
}
|
||||
|
||||
static C4Value FnGameCallEx(C4PropList * _this, C4Value * Pars)
|
||||
{
|
||||
C4String * fn = Pars[0].getStr();
|
||||
|
@ -2580,7 +2569,6 @@ C4ScriptFnDef C4ScriptGameFnMap[]=
|
|||
{ "FindObject", 1, C4V_Object, { C4V_Array ,C4V_Any ,C4V_Any ,C4V_Any ,C4V_Any ,C4V_Any ,C4V_Any ,C4V_Any ,C4V_Any ,C4V_Any}, FnFindObject },
|
||||
{ "FindObjects", 1, C4V_Array, { C4V_Array ,C4V_Any ,C4V_Any ,C4V_Any ,C4V_Any ,C4V_Any ,C4V_Any ,C4V_Any ,C4V_Any ,C4V_Any}, FnFindObjects },
|
||||
{ "ObjectCount", 1, C4V_Int, { C4V_Array ,C4V_Any ,C4V_Any ,C4V_Any ,C4V_Any ,C4V_Any ,C4V_Any ,C4V_Any ,C4V_Any ,C4V_Any}, FnObjectCount },
|
||||
{ "GameCall", 1, C4V_Any, { C4V_String ,C4V_Any ,C4V_Any ,C4V_Any ,C4V_Any ,C4V_Any ,C4V_Any ,C4V_Any ,C4V_Any ,C4V_Any}, FnGameCall },
|
||||
{ "GameCallEx", 1, C4V_Any, { C4V_String ,C4V_Any ,C4V_Any ,C4V_Any ,C4V_Any ,C4V_Any ,C4V_Any ,C4V_Any ,C4V_Any ,C4V_Any}, FnGameCallEx },
|
||||
{ "PlayerMessage", 1, C4V_Int, { C4V_Int ,C4V_String ,C4V_Any ,C4V_Any ,C4V_Any ,C4V_Any ,C4V_Any ,C4V_Any ,C4V_Any ,C4V_Any}, FnPlayerMessage },
|
||||
{ "Message", 1, C4V_Bool, { C4V_String ,C4V_Any ,C4V_Any ,C4V_Any ,C4V_Any ,C4V_Any ,C4V_Any ,C4V_Any ,C4V_Any ,C4V_Any}, FnMessage },
|
||||
|
|
|
@ -217,7 +217,7 @@ C4PropList::~C4PropList()
|
|||
assert(PropLists.Has(this));
|
||||
PropLists.Remove(this);
|
||||
#endif
|
||||
assert (!C4PropListNumbered::CheckPropList(this));
|
||||
assert(!C4PropListNumbered::CheckPropList(this));
|
||||
}
|
||||
|
||||
bool C4PropList::operator==(const C4PropList &b) const
|
||||
|
|
Loading…
Reference in New Issue