View Single Post
FaTony
Veteran Member
Join Date: Aug 2008
Old 01-24-2011 , 11:50   Re: undefined symbol from my own plugin
Reply With Quote #19

Quote:
Originally Posted by sn4k3 View Post
PHP Code:
//=================================================================================
// Following Constans, define what libs to use on the plugin and thier variables
// Allow disable or enable NO-STATIC Libraries from plugin.
// They will be always avaliable to use, but aren't pre defenied by plugintemplate
// Never change define name
// Comment to disable
//=================================================================================
#define USE_LIB_DOWNLOAD
#define USE_LIB_SOUND
#define USE_LIB_PLAYERMNGR
#define USE_LIB_TIMER
#define USE_LIB_PROFILING
#define USE_LIB_ADMIN
#define USE_LIB_EASYADMIN
#define USE_LIB_LANG
#define USE_LIB_MENU
#define USE_LIB_PROP
#define USE_LIB_VFUNCS
#define USE_LIB_SIGSCAN

//=================================================================================
// Define libraries variables to use on plugin
// Never change define name
// l = library
//=================================================================================
#define VAR_LIB_DOWNLOAD    glDownload
#define VAR_LIB_SOUND        glSound
#define VAR_LIB_PLAYERMNGR    glPlayerMngr
#define VAR_LIB_TIMER        glTimer
#define VAR_LIB_PROFILING    glProfiling
#define VAR_LIB_ADMIN        glAdmin
#define VAR_LIB_EASYADMIN    glEasyAdmin
#define VAR_LIB_LANG        glLang
#define VAR_LIB_MENU        glMenu
#define VAR_LIB_HACK        glHack
// Do not touch this three
#define VAR_LIB_PROP        VAR_LIB_HACK->Props
#define VAR_LIB_VFUNCS        VAR_LIB_HACK->VFuncs
#define VAR_LIB_SIGSCAN        VAR_LIB_HACK->SigScan

//=================================================================================
// Short and nice typed re-defenitions from libraries variables
// You can change define name to your prefered name
// v = var, l = library
//=================================================================================
#define vlDownload            VAR_LIB_DOWNLOAD
#define vlSound                VAR_LIB_SOUND
#define vlPlayerMngr        VAR_LIB_PLAYERMNGR
#define vlTimer                VAR_LIB_TIMER
#define vlProfiling            VAR_LIB_PROFILING
#define vlAdmin                VAR_LIB_ADMIN
#define vlEasyAdmin            VAR_LIB_EASYADMIN
#define vlLang                VAR_LIB_LANG
#define vlMenu                VAR_LIB_MENU
#define vlHack                VAR_LIB_HACK
#define vlProp                VAR_LIB_PROP
#define vlVFuncs            VAR_LIB_VFUNCS
#define vlVSigscan            VAR_LIB_SIGSCAN 
i do the same for the interfaces:

PHP Code:
//=================================================================================
// Disable or enable interfaces from plugin.
// They will be always avaliable to use, but aren't pre defenied by plugintemplate
// Never change define name
// Comment to disable
//=================================================================================
#define USE_IFACE_BOTMANAGER            // (IBotManager)
#define USE_IFACE_VOICESERVER            // (IVoiceServer)
#define USE_IFACE_GAMEEVENTMANAGER        // (IGameEventManager2)
#define USE_IFACE_EFFECTS                // (IEffects)
#define USE_IFACE_ENGINETRACE            // (IEngineTrace)
#define USE_IFACE_SERVERGAMEENTS        // (IServerGameEnts)
#define USE_IFACE_SERVERCLIENTS            // (IServerGameClients)
#define USE_IFACE_RANDOMSTREAM            // (IUniformRandomStream)
#define USE_IFACE_SOUNDS                // (IEngineSound)
#define USE_IFACE_NETWORKSTRINGTABLE    // (NetworkStringTableContainer)


//=================================================================================
// Following Constans, define plugin interfaces variables names
// Methods under [] is where interface got used
//=================================================================================

#define VAR_IFACE_ENGINE                engine                    // Must use (IVEngineServer)
#define VAR_IFACE_PLAYERINFOMANAGER        playerinfomanager        // Must use (IPlayerInfoManager)
#define VAR_IFACE_SERVERPLUGINHELPERS    helpers                    // Must use (IServerPluginHelpers)
#define VAR_IFACE_ICVAR                    icvar                    // Must use (ICvar)
#define VAR_IFACE_SERVERGAMEDLL            servergamedll            // Must use (IServerGameDLL)
#define VAR_IFACE_FILESYSTEM            filesystem                // Must use (IFileSystem)
#define VAR_IFACE_GLOBALVARS            gpGlobals                // Must use (CGlobalVars)

#define VAR_IFACE_BOTMANAGER            botmanager                // Optional (IBotManager)
#define VAR_IFACE_VOICESERVER            voiceserver                // Optional (IVoiceServer)
#define VAR_IFACE_GAMEEVENTMANAGER        gameeventmanager        // Optional (IGameEventManager2)
#define VAR_IFACE_EFFECTS                effects                    // Optional (IEffects)
#define VAR_IFACE_ENGINETRACE            enginetrace                // Optional (IEngineTrace)
#define VAR_IFACE_SERVERGAMEENTS        serverents                // Optional (IServerGameEnts) [GetEntityFromBaseEntity]
#define VAR_IFACE_SERVERCLIENTS            serverclients            // Optional (IServerGameClients) [GetPlayerStatefromEdict, metamod plugin hooks]
#define VAR_IFACE_RANDOMSTREAM            randomStr                // Optional (IUniformRandomStream) [GetEntityOfRandPlayer and GetIndexOfRandPlayer]
#define VAR_IFACE_SOUNDS                esounds                    // Optional (IEngineSound) [EmitSound, PrecacheSound]
#define VAR_IFACE_NETWORKSTRINGTABLE    networkstringtable        // Optional (NetworkStringTableContainer) [Downloads]


//=================================================================================
// Short and nice typed re-defenitions from interfaces variables
// You can change define name to your prefered name
// v = var, i = interface
//=================================================================================

#define viEngine                        VAR_IFACE_ENGINE
#define viPlayerinfomanager                VAR_IFACE_PLAYERINFOMANAGER
#define viHelpers                        VAR_IFACE_SERVERPLUGINHELPERS
#define viICvar                            VAR_IFACE_ICVAR
#define viServerdll                        VAR_IFACE_SERVERGAMEDLL
#define viFilesystem                    VAR_IFACE_FILESYSTEM
#define viGlobals                        VAR_IFACE_GLOBALVARS

#define viBotmanager                    VAR_IFACE_BOTMANAGER
#define viVoiceserver                    VAR_IFACE_VOICESERVER
#define viGameeventmanager                VAR_IFACE_GAMEEVENTMANAGER
#define viEffects                        VAR_IFACE_EFFECTS
#define viEnginetrace                    VAR_IFACE_ENGINETRACE
#define viServerclients                    VAR_IFACE_SERVERGAMEENTS
#define viRandomStr                        VAR_IFACE_RANDOMSTREAM
#define viEsounds                        VAR_IFACE_SOUNDS
#define viNetworkstringtable            VAR_IFACE_NETWORKSTRINGTABLE 
http://www.youtube.com/watch?v=1vHRMeRszw4
__________________
FaTony is offline