diff options
Diffstat (limited to 'Northstar.CustomServers/scripts/vscripts/class/cbaseentity.nut')
-rw-r--r-- | Northstar.CustomServers/scripts/vscripts/class/cbaseentity.nut | 229 |
1 files changed, 0 insertions, 229 deletions
diff --git a/Northstar.CustomServers/scripts/vscripts/class/cbaseentity.nut b/Northstar.CustomServers/scripts/vscripts/class/cbaseentity.nut deleted file mode 100644 index 08d2b2e1..00000000 --- a/Northstar.CustomServers/scripts/vscripts/class/cbaseentity.nut +++ /dev/null @@ -1,229 +0,0 @@ -untyped - -global function CodeCallback_RegisterClass_CBaseEntity - -//========================================================= -// CBaseEntity -// Properties and methods added here can be accessed on all script entities -//========================================================= - -#if DEV -table __scriptVarDelegate = {} -#endif - -function CodeCallback_RegisterClass_CBaseEntity() -{ - //printl( "Class Script: CBaseEntity" ) - - CBaseEntity.ClassName <- "CBaseEntity" - - // Script variables; initializing these to something other than "null" will cause them to be treated as a - // static variable on the class instead of a unique variable on each instance. - CBaseEntity.s <- null - - CBaseEntity.funcsByString <- null - - CBaseEntity.useFunction <- null // should match on server/client - - CBaseEntity._entityVars <- null - - CBaseEntity.invulnerable <- 0 - - // this replacement could just be made in the scripts where this call happens, - // but there's too many for me to replace right now - CBaseEntity.__KeyValueFromString <- CBaseEntity.SetValueForKey - CBaseEntity.__KeyValueFromInt <- CBaseEntity.SetValueForKey - - function CBaseEntity::constructor() - { - #if DEV - this.s = delegate __scriptVarDelegate : {} - #else - this.s = {} - #endif - - this.useFunction = UseReturnTrue // default use function - - this.funcsByString = {} - } - - #if DEV - function __scriptVarDelegate::_typeof() - { - return "ScriptVariableTable" - } - - disableoverwrite( __scriptVarDelegate ) - #endif - - /* - Do not delete, thanks. - - CBaseEntity.__SetOrigin <- CBaseEntity.SetOrigin - function CBaseEntity::SetOrigin( origin ) - { - if ( this.GetTargetName() == "xauto_1" ) - { - printl( "\n\n" ) - DumpStack() - } - this.__SetOrigin( origin ) - } - */ - - function CBaseEntity::_typeof() - { - return format( "[%d] %s: %s", this.entindex(), this.GetClassName(), this.GetTargetName() ) - } - - function CBaseEntity::Get( val ) - { - return this.GetValueForKey( val ) - } - - function CBaseEntity::Set( key, val ) - { - return this.SetValueForKey( key, val ) - } - - // This exists in code too and is only here for untyped entity variables - function CBaseEntity::WaitSignal( signalID ) - { - return WaitSignal( this, signalID ) - } - - // This exists in code too and is only here for untyped entity variables - function CBaseEntity::EndSignal( signalID ) - { - EndSignal( this, signalID ) - } - - // This exists in code too and is only here for untyped entity variables - function CBaseEntity::Signal( signalID, results = null ) - { - Signal( this, signalID, results ) - } - - function CBaseEntity::DisableDraw() - { - this.FireNow( "DisableDraw" ) - } - #document( "CBaseEntity::DisableDraw", "consider this the mega hide" ) - - function CBaseEntity::EnableDraw() - { - this.FireNow( "EnableDraw" ) - } - #document( "CBaseEntity::EnableDraw", "its back!" ) - - - // -------------------------------------------------------- - function CBaseEntity::Kill_Deprecated_UseDestroyInstead( time = 0 ) - { - EntFireByHandle( this, "kill", "", time, null, null ) - } - #document( "CBaseEntity::Kill_Deprecated_UseDestroyInstead", "Kill this entity: this function is deprecated because it has a one-frame delay; instead, call ent.Destroy()" ) - - // -------------------------------------------------------- - function CBaseEntity::Fire( output, param = "", delay = 0, activator = null, caller = null ) - { - Assert( type( output ) == "string", "output type " + type( output ) + " is not a string" ) - EntFireByHandle( this, output, string( param ), delay, activator, caller ) - } - #document( "CBaseEntity::Fire", "Fire an output on this entity, with optional parm and delay" ) - - function CBaseEntity::FireNow( output, param = "", activator = null, caller = null ) - { - Assert( type( output ) == "string" ) - EntFireByHandleNow( this, output, string( param ), activator, caller ) - } - #document( "CBaseEntity::FireNow", "Fire an output on this entity, with optional parm and delay (synchronous)" ) - - // -------------------------------------------------------- - function CBaseEntity::AddOutput( outputName, target, inputName, parameter = "", delay = 0, maxFires = 0 ) - { - local targetName = target - - if ( type( target ) != "string" ) - { - Assert( type( target ) == "instance" ) - targetName = target.GetTargetName() - Assert( targetName.len(), "AddOutput: targetted entity must have a name!" ) - } - Assert( targetName.len(), "Attemped to AddOutput on an unnamed target" ) - - local addOutputString = outputName + " " + targetName + ":" + inputName + ":" + parameter + ":" + delay + ":" + maxFires - //printl(" Added output string: " + addOutputString ) - - EntFireByHandle( this, "AddOutput", addOutputString, 0, null, null ) - } - #document( "CBaseEntity::AddOutput", "Connects an output on this entity to an input on another entity via code. The \"target\" can be a name or a named entity." ) - - /* - function MoveTo() - */ - - function CBaseEntity::MoveTo( dest, time, easeIn = 0, easeOut = 0 ) - { - if ( this.GetClassName() == "script_mover" ) - { - this.NonPhysicsMoveTo( dest, time, easeIn, easeOut ) - } - else - { - this.SetOrigin( dest ) - CodeWarning( "Used moveto on non script_mover: " + this.GetClassName() + ", " + this ) - } - } - #document( "CBaseEntity::MoveTo", "Move to the specified origin over time with ease in and ease out." ) - - /* - function RotateTo() - */ - - function CBaseEntity::RotateTo( dest, time, easeIn = 0, easeOut = 0 ) - { - if ( this.GetClassName() == "script_mover" ) - { - this.NonPhysicsRotateTo( dest, time, easeIn, easeOut ) - } - else - { - this.SetAngles( dest ) - CodeWarning( "Used rotateto on non script_mover: " + this.GetClassName() + ", " + this ) - } - } - #document( "CBaseEntity::RotateTo", "Rotate to the specified angles over time with ease in and ease out." ) - - function CBaseEntity::AddVar( varname, value ) - { - Assert( !( varname in this.s ), "Tried to add variable to " + this + " that already existed: " + varname ) - - this.s[ varname ] <- value - } - - function CBaseEntity::CreateStringForFunction( func ) - { - // this is a general purpose function that returns a string which, when executed, - // runs the given function on this entity. - // the function must be called (or the entity deleted) at some point to avoid leaking the new slot we make in this Table. - - Assert( type( func ) == "function" ) - - string newGuid = UniqueString() - this.funcsByString[newGuid] <- func - - return "_RunFunctionByString( \"" + newGuid + "\" )" - } - - function _RunFunctionByString( guid ) - { - local activator = this.activator - Assert( activator.funcsByString[guid] ) - - local func = activator.funcsByString[guid].bindenv( activator.scope() ) - delete activator.funcsByString[guid] - - func() - } -} |