06.01.2011, 02:34
Introduзгo:
Olб a todos hoje com muito orgulho venho criar um tutorial inйdito como deixar seu servidor compatнvel com vбrias versхes!
Veja:
Delete as Includes e coloque isto ao topo Game Mode:
Basta modificar as includes conforme queremos e ServerVersion conforme a versгo
Pastas:
Includes0 = 0.3a
Includes1 = 0.3b
Includes2 = 0.3c
Editando Objetos:
Como na versгo A para versгo B houve uma pequena modificaзгo nos objetos faзa o seguinte:
Mude todos
CreateObject > CreateObjectEx
E adicione ao final GM:
O Mesmo faзa com as outras funзхes que mudaram.
Simples,espero que tenham entendido a lуgica.
Agora se 'virem' com sua simples manipulaзгo de macros
Lembre-se:
Tutorial Lуgico
Crйditos:
Sistema pensado por mim,o 'Tutorial' tambйm.
Abraзos
Olб a todos hoje com muito orgulho venho criar um tutorial inйdito como deixar seu servidor compatнvel com vбrias versхes!
Veja:
Delete as Includes e coloque isto ao topo Game Mode:
pawn Код:
//-»»» Versгo do Servidor «««-//
#define ServerVersion 1 // 0 = 0.3a | 1 = 0.3b | 2 = 0.3c - MUDE
//-»»» Includes do GameMode «««-//
#if ServerVersion == 0
#include "../Includes0/a_samp.inc"
#include "../includes0/Comandos.inc"
#include "../includes0/Arquivos.inc"
#include "../includes0/stremming.inc"
#include "../includes0/Foreach.inc"
#include "../includes0/djson.inc"
#include "../includes0/Veiculos.inc"
#endif
#if ServerVersion == 1
#include "../Includes1/a_mysql.inc"
#include "../Includes1/a_samp.inc"
#include "../Includes1/a_http.inc"
#include "../includes1/Comandos.inc"
#include "../includes1/Arquivos.inc"
#include "../includes1/stremming.inc"
#include "../includes1/Foreach.inc"
#include "../includes1/djson.inc"
#include "../includes1/Veiculos.inc"
#endif
#if ServerVersion == 2
#include "../Includes2/a_samp.inc"
#include "../includes2/Comandos.inc"
#include "../includes2/Arquivos.inc"
#include "../includes2/stremming.inc"
#include "../includes2/Foreach.inc"
#include "../includes2/djson.inc"
#include "../includes2/Veiculos.inc"
#define SetPlayerHoldingObject(%1,%2,%3,%4,%5,%6,%7,%8,%9) SetPlayerAttachedObject(%1,5-1,%2,%3,%4,%5,%6,%7,%8,%9)
#define StopPlayerHoldingObject(%1) RemovePlayerAttachedObject(%1,5-1)
#define IsPlayerHoldingObject(%1) IsPlayerAttachedObjectSlotUsed(%1,5-1)
#endif
Pastas:
Includes0 = 0.3a
Includes1 = 0.3b
Includes2 = 0.3c
Editando Objetos:
Como na versгo A para versгo B houve uma pequena modificaзгo nos objetos faзa o seguinte:
Mude todos
CreateObject > CreateObjectEx
E adicione ao final GM:
pawn Код:
stock CreateObjectEx(modelid, Float:X, Float:Y, Float:Z, Float:rX, Float:rY, Float:rZ, Float:DrawDistance = 333.3)
{
#if ServerVersion == 0
#pragma unused DrawDistance
CreateObject(modelid, Float:X, Float:Y, Float:Z, Float:rX, Float:rY, Float:rZ);
#endif
#if ServerVersion == 1
CreateObject(modelid, Float:X, Float:Y, Float:Z, Float:rX, Float:rY, Float:rZ, Float:DrawDistance);
#endif
#if ServerVersion == 2
CreateObject(modelid, Float:X, Float:Y, Float:Z, Float:rX, Float:rY, Float:rZ, Float:DrawDistance);
#endif
return true;
}
Simples,espero que tenham entendido a lуgica.
Agora se 'virem' com sua simples manipulaзгo de macros
Lembre-se:
Код:
#if ServerVersion == 1 - > Checarб versгo do server #endif -> Fecharб o cуdigo para a versгo usada na condicional if #pragma unused DrawDistance -> Indica que nгoo usaremos DrawDistance (evita warns)
Crйditos:
Sistema pensado por mim,o 'Tutorial' tambйm.
Abraзos