Example #1
0
        static GLua()
        {
            RegisterMarshal(typeof(String[]), ArrayTypeMarshal <String> .Create());
            RegisterMarshal(typeof(CFunc), CFunctionTypeMarshal.Create());
            RegisterMarshal(typeof(Delegate), DelegateTypeMarshal.Create());
            RegisterMarshal(typeof(String), StringTypeMarshal.Create());
            RegisterMarshal(typeof(Boolean), BooleanTypeMarshal.Create());
            RegisterMarshal(typeof(Double), NumberTypeMarshal.Create());
            RegisterMarshal(typeof(Single), NumberTypeMarshal.Create());
            RegisterMarshal(typeof(Int64), NumberTypeMarshal.Create());
            RegisterMarshal(typeof(UInt64), NumberTypeMarshal.Create());
            RegisterMarshal(typeof(Int32), NumberTypeMarshal.Create());
            RegisterMarshal(typeof(UInt32), NumberTypeMarshal.Create());
            RegisterMarshal(typeof(Int16), NumberTypeMarshal.Create());
            RegisterMarshal(typeof(UInt16), NumberTypeMarshal.Create());
            RegisterMarshal(typeof(SByte), NumberTypeMarshal.Create());
            RegisterMarshal(typeof(Byte), NumberTypeMarshal.Create());
            RegisterMarshal(typeof(Color), ColorTypeMarshal.Create());
            RegisterMarshal(typeof(Vector), VectorTypeMarshal.Create());
            RegisterMarshal(typeof(Angle), AngleTypeMarshal.Create());

            RegisterMarshal(typeof(Table), TableTypeMarshal.Create());
            RegisterMarshal(typeof(PhysCollide), GenericTableTypeMarshal.Create <PhysCollide>());
            RegisterMarshal(typeof(Entity), GenericTableTypeMarshal.Create <Entity>());
            RegisterMarshal(typeof(PhysObj), GenericTableTypeMarshal.Create <PhysObj>());
            RegisterMarshal(typeof(ISave), GenericTableTypeMarshal.Create <ISave>());
            RegisterMarshal(typeof(IRestore), GenericTableTypeMarshal.Create <IRestore>());
            RegisterMarshal(typeof(CTakeDamageInfo), GenericTableTypeMarshal.Create <CTakeDamageInfo>());
            RegisterMarshal(typeof(CEffectData), GenericTableTypeMarshal.Create <CEffectData>());
            RegisterMarshal(typeof(CMoveData), GenericTableTypeMarshal.Create <CMoveData>());
            RegisterMarshal(typeof(CRecipientFilter), GenericTableTypeMarshal.Create <CRecipientFilter>());
            RegisterMarshal(typeof(CUserCmd), GenericTableTypeMarshal.Create <CUserCmd>());
            RegisterMarshal(typeof(IMaterial), GenericTableTypeMarshal.Create <IMaterial>());
            RegisterMarshal(typeof(Panel), GenericTableTypeMarshal.Create <Panel>());
            RegisterMarshal(typeof(CLuaParticle), GenericTableTypeMarshal.Create <CLuaParticle>());
            RegisterMarshal(typeof(CLuaEmitter), GenericTableTypeMarshal.Create <CLuaEmitter>());
            RegisterMarshal(typeof(ITexture), GenericTableTypeMarshal.Create <ITexture>());
            RegisterMarshal(typeof(bf_read), GenericTableTypeMarshal.Create <bf_read>());
            RegisterMarshal(typeof(ConVar), GenericTableTypeMarshal.Create <ConVar>());
            RegisterMarshal(typeof(IMesh), GenericTableTypeMarshal.Create <IMesh>());
            RegisterMarshal(typeof(VMatrix), GenericTableTypeMarshal.Create <VMatrix>());
            RegisterMarshal(typeof(CSoundPatch), GenericTableTypeMarshal.Create <CSoundPatch>());
            RegisterMarshal(typeof(pixelvis_handle_t), GenericTableTypeMarshal.Create <pixelvis_handle_t>());
            RegisterMarshal(typeof(dlight_t), GenericTableTypeMarshal.Create <dlight_t>());
            RegisterMarshal(typeof(IVideoWriter), GenericTableTypeMarshal.Create <IVideoWriter>());
            RegisterMarshal(typeof(File), GenericTableTypeMarshal.Create <File>());
            RegisterMarshal(typeof(CLuaLocomotion), GenericTableTypeMarshal.Create <CLuaLocomotion>());
            RegisterMarshal(typeof(PathFollower), GenericTableTypeMarshal.Create <PathFollower>());
            RegisterMarshal(typeof(CNavArea), GenericTableTypeMarshal.Create <CNavArea>());
            RegisterMarshal(typeof(IGModAudioChannel), GenericTableTypeMarshal.Create <IGModAudioChannel>());
            RegisterMarshal(typeof(CNavLadder), GenericTableTypeMarshal.Create <CNavLadder>());
            RegisterMarshal(typeof(CNewParticleEffect), GenericTableTypeMarshal.Create <CNewParticleEffect>());
            RegisterMarshal(typeof(ProjectedTexture), GenericTableTypeMarshal.Create <ProjectedTexture>());

            RegisterMarshal(typeof(Player), GenericTableTypeMarshal.Create <Player>());
            InitJIT();
        }
Example #2
0
        public Player[] GetPlayers()
        {
            Boolean B = this.LuaHandle.Lock();

            this.LuaHandle.ReferencePush(this.Referance);
            this.LuaHandle.GetField(-1, "GetPlayers");
            this.LuaHandle.Insert(-2);
            this.LuaHandle.Call(1, 1);
            Player[] Ret = ArrayTypeMarshal <Player> .Create().GetT(this.LuaHandle);

            if (B)
            {
                this.LuaHandle.UnLock();
            }
            return(Ret);
        }