mirror of
https://github.com/mapbase-source/source-sdk-2013.git
synced 2025-05-07 20:39:35 +03:00
Remove VScript Squrrel arithmetic operator helper
They were broken, and only add for Quaternions was implemented, for which there is a working QuaternionAdd() script function instead. Fixing it seems like unnecessary work.
This commit is contained in:
parent
a2e43a567f
commit
cbb60e1afd
@ -322,11 +322,6 @@ public:
|
|||||||
#ifdef MAPBASE_VSCRIPT
|
#ifdef MAPBASE_VSCRIPT
|
||||||
virtual bool Get( void *p, const char *pszKey, ScriptVariant_t &variant ) { return false; }
|
virtual bool Get( void *p, const char *pszKey, ScriptVariant_t &variant ) { return false; }
|
||||||
virtual bool Set( void *p, const char *pszKey, ScriptVariant_t &variant ) { return false; }
|
virtual bool Set( void *p, const char *pszKey, ScriptVariant_t &variant ) { return false; }
|
||||||
|
|
||||||
virtual ScriptVariant_t *Add( void *p, ScriptVariant_t &variant ) { return NULL; }
|
|
||||||
virtual ScriptVariant_t *Subtract( void *p, ScriptVariant_t &variant ) { return NULL; }
|
|
||||||
virtual ScriptVariant_t *Multiply( void *p, ScriptVariant_t &variant ) { return NULL; }
|
|
||||||
virtual ScriptVariant_t *Divide( void *p, ScriptVariant_t &variant ) { return NULL; }
|
|
||||||
#endif
|
#endif
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -275,23 +275,6 @@ bool CScriptQuaternionInstanceHelper::Set( void *p, const char *pszKey, ScriptVa
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
ScriptVariant_t *CScriptQuaternionInstanceHelper::Add( void *p, ScriptVariant_t &variant )
|
|
||||||
{
|
|
||||||
Quaternion *pQuat = ((Quaternion *)p);
|
|
||||||
|
|
||||||
float flAdd;
|
|
||||||
variant.AssignTo( &flAdd );
|
|
||||||
|
|
||||||
(*pQuat)[0] += flAdd;
|
|
||||||
(*pQuat)[1] += flAdd;
|
|
||||||
(*pQuat)[2] += flAdd;
|
|
||||||
(*pQuat)[3] += flAdd;
|
|
||||||
|
|
||||||
static ScriptVariant_t result;
|
|
||||||
result = (HSCRIPT)p;
|
|
||||||
return &result;
|
|
||||||
}
|
|
||||||
|
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
@ -40,11 +40,6 @@ class CScriptQuaternionInstanceHelper : public IScriptInstanceHelper
|
|||||||
|
|
||||||
bool Get( void *p, const char *pszKey, ScriptVariant_t &variant );
|
bool Get( void *p, const char *pszKey, ScriptVariant_t &variant );
|
||||||
bool Set( void *p, const char *pszKey, ScriptVariant_t &variant );
|
bool Set( void *p, const char *pszKey, ScriptVariant_t &variant );
|
||||||
|
|
||||||
ScriptVariant_t *Add( void *p, ScriptVariant_t &variant );
|
|
||||||
//ScriptVariant_t *Subtract( void *p, ScriptVariant_t &variant );
|
|
||||||
//ScriptVariant_t *Multiply( void *p, ScriptVariant_t &variant );
|
|
||||||
//ScriptVariant_t *Divide( void *p, ScriptVariant_t &variant );
|
|
||||||
};
|
};
|
||||||
|
|
||||||
inline Quaternion *ToQuaternion( HSCRIPT hQuat ) { return HScriptToClass<Quaternion>( hQuat ); }
|
inline Quaternion *ToQuaternion( HSCRIPT hQuat ) { return HScriptToClass<Quaternion>( hQuat ); }
|
||||||
|
@ -1578,106 +1578,6 @@ SQInteger set_stub(HSQUIRRELVM vm)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
SQInteger add_stub(HSQUIRRELVM vm)
|
|
||||||
{
|
|
||||||
ClassInstanceData* classInstanceData = nullptr;
|
|
||||||
sq_getinstanceup(vm, 1, (SQUserPointer*)&classInstanceData, 0);
|
|
||||||
|
|
||||||
ScriptVariant_t var;
|
|
||||||
getVariant( vm, 1, var );
|
|
||||||
|
|
||||||
if (classInstanceData &&
|
|
||||||
classInstanceData->instance &&
|
|
||||||
classInstanceData->desc->pHelper)
|
|
||||||
{
|
|
||||||
ScriptVariant_t *result = classInstanceData->desc->pHelper->Add( classInstanceData->instance, var );
|
|
||||||
if (result != nullptr)
|
|
||||||
{
|
|
||||||
PushVariant( vm, *result );
|
|
||||||
sq_pop(vm, 1);
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
sq_pop(vm, 1);
|
|
||||||
return sqstd_throwerrorf(vm, "invalid arith op +");
|
|
||||||
}
|
|
||||||
|
|
||||||
SQInteger sub_stub(HSQUIRRELVM vm)
|
|
||||||
{
|
|
||||||
ClassInstanceData* classInstanceData = nullptr;
|
|
||||||
sq_getinstanceup(vm, 1, (SQUserPointer*)&classInstanceData, 0);
|
|
||||||
|
|
||||||
ScriptVariant_t var;
|
|
||||||
getVariant( vm, 1, var );
|
|
||||||
|
|
||||||
if (classInstanceData &&
|
|
||||||
classInstanceData->instance &&
|
|
||||||
classInstanceData->desc->pHelper)
|
|
||||||
{
|
|
||||||
ScriptVariant_t *result = classInstanceData->desc->pHelper->Subtract( classInstanceData->instance, var );
|
|
||||||
if (result != nullptr)
|
|
||||||
{
|
|
||||||
PushVariant( vm, *result );
|
|
||||||
sq_pop(vm, 1);
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
sq_pop(vm, 1);
|
|
||||||
return sqstd_throwerrorf(vm, "invalid arith op -");
|
|
||||||
}
|
|
||||||
|
|
||||||
SQInteger mul_stub(HSQUIRRELVM vm)
|
|
||||||
{
|
|
||||||
ClassInstanceData* classInstanceData = nullptr;
|
|
||||||
sq_getinstanceup(vm, 1, (SQUserPointer*)&classInstanceData, 0);
|
|
||||||
|
|
||||||
ScriptVariant_t var;
|
|
||||||
getVariant( vm, 1, var );
|
|
||||||
|
|
||||||
if (classInstanceData &&
|
|
||||||
classInstanceData->instance &&
|
|
||||||
classInstanceData->desc->pHelper )
|
|
||||||
{
|
|
||||||
ScriptVariant_t *result = classInstanceData->desc->pHelper->Add( classInstanceData->instance, var );
|
|
||||||
if (result != nullptr)
|
|
||||||
{
|
|
||||||
PushVariant( vm, *result );
|
|
||||||
sq_pop(vm, 1);
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
sq_pop(vm, 1);
|
|
||||||
return sqstd_throwerrorf(vm, "invalid arith op *");
|
|
||||||
}
|
|
||||||
|
|
||||||
SQInteger div_stub(HSQUIRRELVM vm)
|
|
||||||
{
|
|
||||||
ClassInstanceData* classInstanceData = nullptr;
|
|
||||||
sq_getinstanceup(vm, 1, (SQUserPointer*)&classInstanceData, 0);
|
|
||||||
|
|
||||||
ScriptVariant_t var;
|
|
||||||
getVariant( vm, 1, var );
|
|
||||||
|
|
||||||
if (classInstanceData &&
|
|
||||||
classInstanceData->instance &&
|
|
||||||
classInstanceData->desc->pHelper )
|
|
||||||
{
|
|
||||||
ScriptVariant_t *result = classInstanceData->desc->pHelper->Add( classInstanceData->instance, var );
|
|
||||||
if (result != nullptr)
|
|
||||||
{
|
|
||||||
PushVariant( vm, *result );
|
|
||||||
sq_pop(vm, 1);
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
sq_pop(vm, 1);
|
|
||||||
return sqstd_throwerrorf(vm, "invalid arith op /");
|
|
||||||
}
|
|
||||||
|
|
||||||
SQInteger IsValid_stub(HSQUIRRELVM vm)
|
SQInteger IsValid_stub(HSQUIRRELVM vm)
|
||||||
{
|
{
|
||||||
ClassInstanceData* classInstanceData = nullptr;
|
ClassInstanceData* classInstanceData = nullptr;
|
||||||
@ -2511,22 +2411,6 @@ bool SquirrelVM::RegisterClass(ScriptClassDesc_t* pClassDesc)
|
|||||||
sq_newclosure(vm_, set_stub, 0);
|
sq_newclosure(vm_, set_stub, 0);
|
||||||
sq_newslot(vm_, -3, SQFalse);
|
sq_newslot(vm_, -3, SQFalse);
|
||||||
|
|
||||||
sq_pushstring(vm_, "_add", -1);
|
|
||||||
sq_newclosure(vm_, add_stub, 0);
|
|
||||||
sq_newslot(vm_, -3, SQFalse);
|
|
||||||
|
|
||||||
sq_pushstring(vm_, "_sub", -1);
|
|
||||||
sq_newclosure(vm_, sub_stub, 0);
|
|
||||||
sq_newslot(vm_, -3, SQFalse);
|
|
||||||
|
|
||||||
sq_pushstring(vm_, "_mul", -1);
|
|
||||||
sq_newclosure(vm_, mul_stub, 0);
|
|
||||||
sq_newslot(vm_, -3, SQFalse);
|
|
||||||
|
|
||||||
sq_pushstring(vm_, "_div", -1);
|
|
||||||
sq_newclosure(vm_, div_stub, 0);
|
|
||||||
sq_newslot(vm_, -3, SQFalse);
|
|
||||||
|
|
||||||
sq_pushstring(vm_, "IsValid", -1);
|
sq_pushstring(vm_, "IsValid", -1);
|
||||||
sq_newclosure(vm_, IsValid_stub, 0);
|
sq_newclosure(vm_, IsValid_stub, 0);
|
||||||
sq_newslot(vm_, -3, SQFalse);
|
sq_newslot(vm_, -3, SQFalse);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user