qtscript: Add new function setAlliance(player1, player2, value). Also fix js lint.
parent
6b4d2eade2
commit
deb1cd08ec
|
@ -46,6 +46,7 @@
|
|||
#include "challenge.h"
|
||||
#include "research.h"
|
||||
#include "multilimit.h"
|
||||
#include "multigifts.h"
|
||||
#include "template.h"
|
||||
#include "lighting.h"
|
||||
#include "radar.h"
|
||||
|
@ -2369,6 +2370,24 @@ static QScriptValue js_chat(QScriptContext *context, QScriptEngine *engine)
|
|||
}
|
||||
}
|
||||
|
||||
//-- \subsection{setAlliance(player1, player2, value)}
|
||||
//-- Set alliance status between two players to either true or false. (3.2+ only)
|
||||
static QScriptValue js_setAlliance(QScriptContext *context, QScriptEngine *engine)
|
||||
{
|
||||
int player1 = context->argument(0).toInt32();
|
||||
int player2 = context->argument(1).toInt32();
|
||||
bool value = context->argument(2).toBool();
|
||||
if (value)
|
||||
{
|
||||
formAlliance(player1, player2, true, false, true);
|
||||
}
|
||||
else
|
||||
{
|
||||
breakAlliance(player1, player2, true, true);
|
||||
}
|
||||
return QScriptValue(true);
|
||||
}
|
||||
|
||||
//-- \subsection{hackNetOff()}
|
||||
//-- Turn off network transmissions. FIXME - find a better way.
|
||||
static QScriptValue js_hackNetOff(QScriptContext *, QScriptEngine *)
|
||||
|
@ -2397,6 +2416,7 @@ bool registerFunctions(QScriptEngine *engine)
|
|||
engine->globalObject().setProperty("label", engine->newFunction(js_label));
|
||||
engine->globalObject().setProperty("enumLabels", engine->newFunction(js_enumLabels));
|
||||
engine->globalObject().setProperty("enumGateways", engine->newFunction(js_enumGateways));
|
||||
engine->globalObject().setProperty("setAlliance", engine->newFunction(js_setAlliance));
|
||||
|
||||
// horrible hacks follow -- do not rely on these being present!
|
||||
engine->globalObject().setProperty("hackNetOff", engine->newFunction(js_hackNetOff));
|
||||
|
|
|
@ -388,6 +388,18 @@ static QScriptValue js_removeStruct(QScriptContext *context, QScriptEngine *)
|
|||
{
|
||||
ARG_COUNT_EXACT(1);
|
||||
ARG_STRUCT(0);
|
||||
fprintf(stderr, "removeStruct() is deprecated since version 3.2");
|
||||
return QScriptValue(true);
|
||||
}
|
||||
|
||||
static QScriptValue js_removeObject(QScriptContext *context, QScriptEngine *)
|
||||
{
|
||||
ARG_COUNT_VAR(1, 2);
|
||||
ARG_OBJ(0);
|
||||
if (context->argumentCount() > 1)
|
||||
{
|
||||
ARG_BOOL(1);
|
||||
}
|
||||
return QScriptValue(true);
|
||||
}
|
||||
|
||||
|
@ -626,6 +638,13 @@ static QScriptValue js_applyLimitSet(QScriptContext *context, QScriptEngine *eng
|
|||
return QScriptValue();
|
||||
}
|
||||
|
||||
static QScriptValue js_enableTemplate(QScriptContext *context, QScriptEngine *engine)
|
||||
{
|
||||
ARG_COUNT_EXACT(1);
|
||||
ARG_STRING(0);
|
||||
return QScriptValue();
|
||||
}
|
||||
|
||||
static QScriptValue js_enableComponent(QScriptContext *context, QScriptEngine *engine)
|
||||
{
|
||||
ARG_COUNT_EXACT(2);
|
||||
|
@ -858,6 +877,15 @@ static QScriptValue js_isVTOL(QScriptContext *context, QScriptEngine *engine)
|
|||
return QScriptValue(true);
|
||||
}
|
||||
|
||||
static QScriptValue js_setAlliance(QScriptContext *context, QScriptEngine *engine)
|
||||
{
|
||||
ARG_COUNT_EXACT(3);
|
||||
ARG_PLAYER(0);
|
||||
ARG_PLAYER(1);
|
||||
ARG_BOOL(2);
|
||||
return QScriptValue(true);
|
||||
}
|
||||
|
||||
bool testPlayerScript(QString path, int player, int difficulty)
|
||||
{
|
||||
QScriptEngine *engine = new QScriptEngine();
|
||||
|
@ -957,13 +985,16 @@ bool testPlayerScript(QString path, int player, int difficulty)
|
|||
engine->globalObject().setProperty("enableStructure", engine->newFunction(js_enableStructure));
|
||||
engine->globalObject().setProperty("makeComponentAvailable", engine->newFunction(js_makeComponentAvailable));
|
||||
engine->globalObject().setProperty("enableComponent", engine->newFunction(js_enableComponent));
|
||||
engine->globalObject().setProperty("enableTemplate", engine->newFunction(js_enableTemplate));
|
||||
engine->globalObject().setProperty("allianceExistsBetween", engine->newFunction(js_allianceExistsBetween));
|
||||
engine->globalObject().setProperty("removeStruct", engine->newFunction(js_removeStruct));
|
||||
engine->globalObject().setProperty("removeObject", engine->newFunction(js_removeObject));
|
||||
engine->globalObject().setProperty("setScrollParams", engine->newFunction(js_setScrollParams));
|
||||
engine->globalObject().setProperty("addStructure", engine->newFunction(js_addStructure));
|
||||
engine->globalObject().setProperty("loadLevel", engine->newFunction(js_loadLevel));
|
||||
engine->globalObject().setProperty("setDroidExperience", engine->newFunction(js_setDroidExperience));
|
||||
engine->globalObject().setProperty("setNoGoArea", engine->newFunction(js_setNoGoArea));
|
||||
engine->globalObject().setProperty("setAlliance", engine->newFunction(js_setAlliance));
|
||||
|
||||
// Set some useful constants
|
||||
engine->globalObject().setProperty("DORDER_ATTACK", 0, QScriptValue::ReadOnly | QScriptValue::Undeletable);
|
||||
|
|
Loading…
Reference in New Issue