Venho publicar um simples game mode que provávelmente poderá servir de muitas coisas, incluindo até a base de outros gamemodes por intermedio deste.
O modo de jogo não tem mais que 900 linhas.
Funções:
- Várias animações
- Sistema de matar/morrer com score e dinheiro
- Sistema de registro em Bini e Dialogs Password. Salva Score/Dinheiro/Kills/Deaths (principal função do gm)
pawn Code:
//----------------------------------------------------------//
// Modo de Jogo SimplesA-MP 0.3e// Demonstração para bini
//
//----------------------
S------------------------------------#include <a_samp>#include <bini>Configurações ] ==========================// =============
#define NOME_SER
[VIDOR "Overdose de Diversão"
#define max_name_file (064)efine DIALOG_REGISTER (2)#define max_text_chat (128)
#d
#define DIALOG_LOGIN (1)
#
define min_pass (03)
#define max_pass (15),35,37,38,43,44,45 // (arma1,arma2, arma3, arma4 ...)#define armas_proibidas 1,2,6,10,11,12,14,1
//============== [ Funções ] =============
7==================
static szFormat[max_text_chat];<= 0x5A) || (%0 >= 0x61 && %0 <= 0x7A) || (%0 >= '0' && %0 <= '9'))#define IsAlphaNum(%0) ((%0 >= 0x41 && %
#define FormattedMessage(%1) (format(szFormat
0, max_text_chat, %1), szFormat)
// ============== [ Cores ] =================================
#define COR_CINZA 0xAFAFAFAA
#define COR_VERDE 0x33AA33AAfine COR_LARANJA 0xFF9900AA#define COR_BISQUE 0xFFE4C4AA
#
#define COR_AMARELO 0xFFFF00AA
#define COR_BRANCO 0xFFFFFFAA
#define COR_AZUL 0x0000BBAA
#define COR_AZULCLARO 0x33CCFFAA
#d
edefine COR_LIMAO 0x33FF33AA
#define COR_MAGENTA 0xFF00FFFF
#define COR_AZULMARINHO 0x000080AA
#define COR_AQUA 0xF0F8FFAA
#define COR_MOSCAAZUL 0x6495EDAA
#define COR_PRETO 0x000000AA#define COR_IVORY 0xFFFF82AA#define COR_CHARTREUSE 0x7FFF00AA
#def
#define COR_BROWN 0xA52A2AAA
#define COR_CORAL 0xFF7F50AA
#define COR_GOLD 0xB8860BAA
#define COR_GREENYELLOW 0xADFF2FAA
#define COR_INDIGO 0x4B00B0AA
ine COR_LAWNGREEN 0x7CFC00AA00FF7FAA#define COR_LIMEGREEN 0x32CD32AA
#define COR_TOMATO 0xFF
#define COR_MIDNIGHTBLUE 0x191970AA
#define COR_MAROON 0x800000AA
#define COR_OLIVE 0x808000AA
#define COR_VERMELHA 0xFF4500AA
#define COR_ROSA 0xFF66FFAA
#define COR_SPRINGGREEN 0
x6347AA
#define COR_YELLOWGREEN 0xFFFF00AA
#define COR_MEDIUMAQUA 0x83BFBFAA
#define COR_MEDIUMMAGENTA 0x8B008BAA
#define COR_BRIGHTRED 0xDC143CAA
#define COR_SYSTEM 0xEFEFF7AA
#define COR_PURPLE 0x330066AA----------------------");// =============== [ SA:MP ] ===============================
print("Game mode "#NOME_SERVID
#define varGet(%0) getproperty(0,%0)
#define varSet(%0,%1) setproperty(0, %0, %1)
main()
{
print("\n----------------
-OR" iniciado \n");
print("---------------------------------------\n");
SetGameModeText("Diversão Total 0.1a");
SendRconCommand("hostname "#NOME_SERVIDOR);
}
public OnPlayerConnect(playerid) {e(playerid, COR_BRANCO, " Modo de jogo criado por Bruno da Silva");SendClientMessage(playerid, COR_VERDE, "===================================================");
SendClientMessage(
SendClientMessage(playerid, COR_BRANCO, " Bem vindo ao "#NOME_SERVIDOR);
SendClientMessa
gplayerid, COR_BRANCO, " Acesse meu site www.brunodasilva.com.br");
SendClientMessage(playerid, COR_VERDE, "===================================================");#NOME_SERVIDOR, 3000, 6);SendClientMessage(playerid, COR_AZULCLARO, FormattedMessage(" ** Bem vindo ao servidor, %s! Obedeça as /regras", GetPlayerNick(playerid)));
SendDeathMessage(playerid, -1, 200);
return ReadPlayerFile(playerid);
}
public OnPlayerText(playerid, text
GameTextForPlayer(playerid
,[])
{
SendPlayerMessageToAll(playerid, FormattedMessage("{66FF00}(%d): {66FF00}%s", playerid, text));
return false;
}
public OnPlayerRequestClass(playerid, classid)
{
SetPlayerPos(playerid,1025.5751,-2140.7637,39.2032);
SetPlayerCameraPos(playerid,1019.7552,-2141.0266,37.7274);geToAll(COR_CINZA, FormattedMessage("[Info] %s saiu do servidor (SetPlayerCameraLookAt(playerid,1021.9974,-2140.9907,38.3012);
SetPlayerFacingAngle(playerid, 82.6125);
ApplyAnimation(playerid,"DANCING","DAN_LOOP_A",4.0,1,0,0,0,-1);
return 1;
}
public OnPlayerDisconnect(playerid, reason) {
switch(reason)
{
case 0: SendClientMess
aConexão lenta, crash)", GetPlayerNick(playerid)));
case 1: SendClientMessageToAll(COR_CINZA, FormattedMessage("[Info] %s saiu do servidor (Conta Própria)", GetPlayerNick(playerid)));
case 2: SendClientMessageToAll(COR_CINZA, FormattedMessage("[Info] %s saiu do servidor (Retirado por Admnistrador)", GetPlayerNick(playerid)));
}31, 0600);SendDeathMessage(playerid, -1, 201);
GivePlayerWeapon(playerid
return true;
}
public OnPlayerSpawn(playerid) {
//
// Dar armas para jogadores que nascem
//
GivePlayerWeapon(playerid, 04, 0000);
GivePlayerWeapon(playerid, 16, 0005);
GivePlayerWeapon(playerid, 24, 0300);
GivePlayerWeapon(playerid, 26, 0500);
GivePlayerWeapon(playerid,
, 32, 4500);
GivePlayerWeapon(playerid, 34, 0050);
GivePlayerWeapon(playerid, 46, 0001);
//
// Dar colete vida e dinheiro
//
GivePlayerMoney(playerid, 1000);
SetPlayerHealth(playerid, 100.0);
SetPlayerArmour(playerid, 100.0);
PlayerPlaySound( playerid, 1098, 0.0, 0.0, 0.0);
return true;
}
public OnPlayerDeath(playerid, killerid, reason) {on);GameTextForPlayer(playerid, "Voce esta ~r~morto", 2500, 5);
// Registrar variáveis em tempo real
SetP
if(IsPlayerConnected(killerid) && killerid != INVALID_PLAYER_ID) {
//
// Dar dinheiro e vida para quem mata
//
GivePlayerMoney(killerid, GetPlayerMoney(playerid));
SetPlayerHealth(playerid, 100.0);
// Enviar chat-kill
SendDeathMessage(killerid, playerid, rea
sVarInt(killerid, "Kills" , GetPVarInt(killerid, "Kills") +1);
SetPVarInt(playerid, "Deaths", GetPVarInt(playerid, "Deaths")+1);
SetPVarInt(killerid, "Money" , GetPlayerMoney(killerid));
SetPlayerScore(killerid, GetPlayerScore(killerid) + 3);
// Abrir conta de jogador KILLERID
FormattedMessage("contas/%s.ini", GetPlayerNick(killerid));FormattedMessage("contas/%s.ini", GetPlayerNick(playerid));INI_WriteInt(szFormat, "Score", GetPlayerScore(killerid));
INI_WriteInt(szFormat, "Kills", GetPVarInt(killerid, "Kills"));
INI_WriteInt(szFormat, "Deaths", GetPVarInt(killerid, "Death"));
INI_WriteInt(szFormat, "Money", GetPVarInt(killerid, "Money"));
INI_Save();
// Abrir conta de jogador PLAYERID
INI_WriteInt(szFormat, "Score", GetPlayerScore(playerid));
INI_WriteInt(szFormat, "Kills", GetPVarInt(playerid, "Kills"));
INI_WriteInt(szFormat, "Deaths", GetPVarInt(playerid, "Death"));
INI_WriteInt(szFormat, "Money", GetPVarInt(playerid, "Money"));
INI_Save();
}
//
// Tirar dinheiro de quem morre
//
ResetPlayerMoney(playerid);imitGlobalChatRadius(300.0);SetPVarInt(playerid, "Money", 0);
SetPVarInt(playerid, "morrendo", 0);
return true;
}
public OnGameModeInit()
{
ShowPlayerMarkers(PLAYER_MARKERS_MODE_GLOBAL);
ShowNameTags(1);
SetNameTagDrawDistance(140.0);
EnableStuntBonusForAll(0);
DisableInteriorEnterExits();
SetWeather(2);
SetWorldTime(11);
// ManualVehicleEngineAndLights();
LAddPlayerClass(0,1958.3783,1343.1572,15.3746,270.1425,0,0,24,300,-1,-1);
AddPlayerClass(266,1958.3783,1343.1572,15.3746,270.1425,0,0,24,300,-1,-1);
AddPlayerClass(267,1958.3783,1343.1572,15.3746,270.1425,0,0,24,300,-1,-1);
AddPlayerClass(268,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(269,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);,-1,-1);AddPlayerClass(270,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(282,1958.3783,1343.1572,15.3746,270.1425,0,0,24,30
AddPlayerClass(271,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(272,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(280,1958.3783,1343.1572,15.3746,270.1425,0,0,24,300,-1,-1);
AddPlayerClass(281,1958.3783,1343.1572,15.3746,270.1425,0,0,24,30
00,-1,-1);
AddPlayerClass(283,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(284,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(285,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(286,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(287,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);rClass(259,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);AddPlayerClass(254,1958.3783,1343.1572,15.3746,0.0,0,0,24,300,-1,-1);
Ad
AddPlayerClass(255,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(256,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(257,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(258,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlay
edPlayerClass(260,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(261,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(262,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(263,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(264,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(274,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);-1);AddPlayerClass(275,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(292,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1
AddPlayerClass(276,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(1,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(2,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(290,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(291,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1
,,-1);
AddPlayerClass(293,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(294,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(295,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(296,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(297,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(298,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);AddPlayerClass(48,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);AddPlayerClass(299,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(277,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(278,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(279,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(288,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(47,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(49,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(50,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(51,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(52,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(53,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(54,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(55,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);,-1);AddPlayerClass(56,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(63,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-
AddPlayerClass(57,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(58,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(59,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(60,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(61,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(62,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-
11,-1);
AddPlayerClass(64,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(66,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(67,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(68,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(69,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(70,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(71,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);AddPlayerClass(81,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);AddPlayerClass(72,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(73,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(75,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(76,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(78,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(79,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(80,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(82,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(83,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(84,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(85,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(87,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(88,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(89,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(91,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);1,-1);AddPlayerClass(92,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(101,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300
AddPlayerClass(93,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(95,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(96,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(97,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(98,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(99,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(100,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,
-,-1,-1);
AddPlayerClass(102,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(103,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(104,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(105,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(106,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(107,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(108,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(109,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);dPlayerClass(118,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);AddPlayerClass(110,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
A
AddPlayerClass(111,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(112,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(113,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(114,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(115,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(116,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(117,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
A
dddPlayerClass(120,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(121,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(122,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(123,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(124,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(125,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(126,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(127,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(128,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);-1,-1);AddPlayerClass(129,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(140,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300
AddPlayerClass(131,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(133,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(134,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(135,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(136,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(137,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(138,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(139,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300
,,-1,-1);
AddPlayerClass(141,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(142,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(143,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(144,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(145,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(146,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(147,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(148,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(150,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);dPlayerClass(160,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);AddPlayerClass(151,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
A
AddPlayerClass(152,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(153,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(154,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(155,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(156,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(157,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(158,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(159,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
A
dddPlayerClass(161,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(162,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(163,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(164,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(165,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(166,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(167,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(168,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(169,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(170,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);-1,-1);AddPlayerClass(171,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(181,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300
AddPlayerClass(172,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(173,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(174,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(175,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(176,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(177,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(178,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(179,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(180,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300
,,-1,-1);
AddPlayerClass(182,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(183,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(184,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(185,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(186,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(187,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(188,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(189,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(190,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(191,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);dPlayerClass(202,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);AddPlayerClass(192,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
A
AddPlayerClass(193,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(194,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(195,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(196,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(197,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(198,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(199,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(200,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(201,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
A
dddPlayerClass(203,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(204,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(205,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(206,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(207,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(209,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(210,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(211,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(212,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(213,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(214,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);-1,-1);AddPlayerClass(215,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(226,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300
AddPlayerClass(216,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(217,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(218,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(219,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(220,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(221,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(222,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(223,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(224,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(225,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300
,,-1,-1);
AddPlayerClass(227,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(228,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(229,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(230,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(231,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(232,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(233,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(234,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(235,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(236,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(237,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);dPlayerClass(249,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);AddPlayerClass(238,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
A
AddPlayerClass(239,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(240,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(241,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(242,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(243,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(244,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(245,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(246,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(247,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(248,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
A
dddPlayerClass(250,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(251,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
AddPlayerClass(253,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1);
return true;
}
public OnPlayerCommandText(playerid,cmdtext[]) {
if(!GetPVarInt(playerid, "Logado")) {
SendClientMessage(playerid, COR_VERMELHA, "[Erro] Você ainda não está logado para digitar comandos");
return true;
}
// Morrer
if (!strcmp("/morrer", cmdtext, false)) {
SendClientMessage(playerid, COR_SYSTEM, "[Info] Você morrerá em 10 segundos");
SetTimerEx("matarJogador", 10000, false, "i", playerid);
SetPVarInt(playerid, "morrendo", 1);
return true;
}
// Sincronizar
if(!strcmp(cmdtext, "/desbug", false)) {
static
Float:Px = 0.000000,
Float:Py = 0.000000,
Float:Pz = 0.000000,R_BRANCO, "Para parar as animaçFloat:Pa = 0.000000
;
GetPlayerPos(playerid, Px, Py, Pz);
GetPlayerFacingAngle(playerid, Pa);
RemovePlayerFromVehicle(playerid);
SetPlayerPos(playerid, Px, Py, (Pz+3));
SetPlayerFacingAngle(playerid, Pa);
TogglePlayerControllable(playerid, true);
return true;
}
// Animações
if (!strcmp("/animes", cmdtext, false)) {
SendClientMessage(playerid, COR_VERDE, "=================== [ Animações do Servidor ] ====================================");
SendClientMessage(playerid, COR_BRANCO, "/punheta - /peidar - /bebado - /vomitar - /bomba - /prendendo - /preso");
SendClientMessage(playerid, COR_BRANCO, "/risadas - /fumar - /deitar - /tapinha - /ascenar - /negociar - /beijar - /crack");
SendClientMessage(playerid, COR_BRANCO, "/mijar - /sentar - /xingar - /strip - /falar /dancar - /renderse - /ligar - /desligar");
SendClientMessage(playerid, C
Oões travadas digite /parar. As vezes necessita digitar mais de uma vez.");
SendClientMessage(playerid, COR_VERDE, "===================================================================================");
return true;
}
// Animes
if(!strcmp("/parar", cmdtext, false)) {
ClearAnimations(playerid);
return true;
}
if(!strcmp("/ligar", cmdtext, false)) {
SetPlayerSpecialAction(playerid, 11);
return true;
}
if(!strcmp("/desligar", cmdtext, false)) {
SetPlayerSpecialAction(playerid, 13);
return true;
}
if (!strcmp(cmdtext, "/punheta", false)){
ApplyAnimation(playerid,"PAULNMAC", "wank_loop", 1.800001, 1, 0, 0, 1, 600);
return true;
}
if(!strcmp("/peidar", cmdtext, false)) {
ApplyAnimation(playerid,"FINALE","FIN_Land_Car",4.1,0,1,1,1,1);
return true;
}
if(!strcmp("/bebado", cmdtext, false)) {nimation(playerid, "SWEET", "Sweet_injuredloop", 4.0, 0, 0, 0, 0, 0);ApplyAnimation(playerid, "PED", "WALK_DRUNK", 4.0, 1, 1, 1, 1, 0);
return true;
}
if(!strcmp("/vomitar", cmdtext, false)) {
ApplyAnimation(playerid, "FOOD", "EAT_Vomit_P", 3.0, 0, 0, 0, 0, 0);
return true;
}
if (!strcmp("/bomba", cmdtext, false)) {
ApplyAnimation(playerid, "BOMBER", "BOM_Plant", 4.0, 0, 0, 0, 0, 0);
return true;
}
if(!strcmp("/prendendo", cmdtext, true)) {
ApplyAnimation(playerid, "POLICE", "plc_drgbst_01", 4.0, 0, 0, 0, 0, 0);
return true;
}
if (!strcmp("/preso", cmdtext, false)) {
ApplyAnimation(playerid, "POLICE", "crm_drgbst_01", 4.0, 0, 0, 0, 0, 0);
return true;
}
if (!strcmp("/risadas", cmdtext, false)) {
ApplyAnimation(playerid, "RAPPING", "Laugh_01", 4.0, 0, 0, 0, 0, 0);
return true;
}
if (!strcmp("/fumar", cmdtext, false)) {
Apply
A return true;
}
if (!strcmp("/deitar", cmdtext, false)) {
ApplyAnimation(playerid,"BEACH", "bather", 4.0, 0, 0, 0, 0, 0);
return true;
}
if (!strcmp("/tapinha", cmdtext, false)) {
ApplyAnimation(playerid, "SWEET", "sweet_ass_slap", 4.0, 0, 0, 0, 0, 0);
return true;
}
if (!strcmp("/ascenar", cmdtext, false)) {
ApplyAnimation(playerid, "KISSING", "BD_GF_Wave", 3.0, 0, 0, 0, 0, 0);
return true;
}
if (!strcmp("/negociar", cmdtext, false)) {
ApplyAnimation(playerid, "DEALER", "DEALER_DEAL", 4.0, 0, 0, 0, 0, 0);
return true;
}
if (!strcmp("/beijar", cmdtext, false)) {
ApplyAnimation(playerid, "KISSING", "Playa_Kiss_02", 3.0, 0, 0, 0, 0, 0);
return true;
}
if (!strcmp("/crack", cmdtext, false)) {
ApplyAnimation(playerid, "CRACK", "crckdeth2", 4.0, 0, 0, 0, 0, 0);
return true;
}
if (!strcmp("/mijar", cmdtext, false)) {return true;ApplyAnimation(playerid, "PAULNMAC", "Piss_in", 3.0, 0, 0, 0, 0, 0);
}
if(!strcmp("/rap", cmdtext, false)) {
ApplyAn
return true;
}
if (!strcmp("/sentar", cmdtext, false)) {
ApplyAnimation(playerid,"BEACH", "ParkSit_M_loop", 4.0, 0, 0, 0, 0, 0);
return true;
}
if (!strcmp("/xingar", cmdtext, false)) {
ApplyAnimation( playerid,"ped", "fucku", 4.1, 0, 1, 1, 1, 1 );
return true;
}
if (!strcmp("/strip", cmdtext, false)) {
ApplyAnimation( playerid,"STRIP", "strip_D", 4.1, 0, 1, 1, 1, 1 );
return true;
}
if (!strcmp("/falar", cmdtext, false)) {
ApplyAnimation(playerid,"PED","IDLE_CHAT",4.1,0,1,1,1,1);
return true;
}
if (!strcmp("/dancar", cmdtext, false)) {
SetPlayerSpecialAction(playerid,SPECIAL_ACTION_DANCE2);
return true;
}
if(!strcmp(cmdtext, "/renderse", true)) {
ClearAnimations(playerid);
SetPlayerSpecialAction(playerid,SPECIAL_ACTION_HANDSUP);
imation(playerid, "ON_LOOKERS", "wave_loop", 4.0, 1, 0, 0, 0, 0);
return true;
}
// Nicks ON/OFF
if (!strcmp("/nickoff", cmdtext, false)) {
for(new i = 0; i < MAX_PLAYERS; i++) {
ShowPlayerNameTagForPlayer(playerid, i, true);
}
GameTextForPlayer(playerid, "~W~Nicks ~R~Ativados", 5000, 5);
return true;
}
if (!strcmp("/nickoff", cmdtext, false)) {
for(new i = 0; i < MAX_PLAYERS; i++) {
ShowPlayerNameTagForPlayer(playerid, i, false);
}
GameTextForPlayer(playerid, "~W~Nicks ~R~Desativados", 5000, 5);
return true;
}
return SendClientMessage(playerid, COR_VERMELHA, "[Erro] O comando digitado não existe");
}
public OnPlayerUpdate(playerid) {
if(!IsPlayerConnected(playerid)) return false;
if(IsPlayerNPC(playerid)) return true;
//
// Não permitir arma em interiores
//
if(GetPlayerInterior(playerid) && GetPlayerWeapon(playerid)) {
return SetPlayerArmedWeapon(playerid, 0), true;
}
//etPlayerNick(playerid)), "Senha"), inputtext,// Não permitir armas hacking no servidor
//
switch(GetPlayerWeapon(playerid)) {
case armas_proibidas: {
SendClientMessageToAll(COR_VERMELHA, FormattedMessage("[Admin] %s foi banido por usar armas proibidas", GetPlayerNick(playerid)));
return BanEx(playerid, "Weapon Hacking");
}
}
//
// Aplicar animação ao morrer
//
if(GetPVarInt(playerid, "morrendo")) {
ApplyAnimation(playerid, "CRACK", "crckdeth2", 4.0, 0, 0, 0, 0, 0);
}
return true;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) {
//
// Dialog Login Aqui
// Nesta parte recebe-se a senha digitada ao login
//
if(dialogid == DIALOG_LOGIN) {
if(!response) {
SendClientMessageToAll(COR_VERMELHA, FormattedMessage("[Admin] %s foi retirado do servidor por não responder adequdamente a autenticação", GetPlayerNick(playerid)));
return Kick(playerid);
}
if(!strcmp(INI_ReadString(FormattedMessage("contas/%s.ini",
G false)) {
//
// Aqui após o jogador ser autenticado.
//
SetPVarInt(playerid, "Logado", 1);
}
else {
return ShowPlayerDialog(playerid,DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "Autenticar Conta"," Bem vindo ao servidor "#NOME_SERVIDOR#"\nAutentique sua senha:","Autenticar","Cancelar");
}
return true;
}
//
// Dialog Registro Aqui
// Nesta parte recebe-se a senha digitada ao registro
//
if(dialogid == DIALOG_REGISTER) {
if(!response) {
SendClientMessageToAll(COR_VERMELHA, FormattedMessage("[Admin] %s foi retirado do servidor por não responder adequdamente o registro", GetPlayerNick(playerid)));
return Kick(playerid);
}
if(strlen(inputtext) < min_pass || strlen(inputtext) > max_pass || !IsValidString(inputtext)) {
SendClientMessage(playerid, COR_VERMELHA, "[Erro] Sua mensagem deve conter entre 3 e 15 caracteres válidos");ShowPlayerDialog(id,DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "Autenticar Conta"," Bem vindo ao servidor "#NOME_SERVIDOR#"\nAutentique sua senha:","Autenticar",return ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_PASSWORD, "Registrar","Digite uma senha para obter um registro","Confirmar", "Sair");
}
FormattedMessage("contas/%s.ini", GetPlayerNick(playerid));
INI_Create(szFormat);
INI_WriteString(szFormat, "Senha", inputtext);
INI_WriteInt(szFormat, "Score", 0);
INI_WriteInt(szFormat, "Kills", 0);
INI_WriteInt(szFormat, "Deaths", 0);
INI_WriteInt(szFormat, "Money", 0);
INI_Save();
//
// Após registrar. Colocar variáveis
//
SetPVarInt(playerid, "Logado", 1);
SetPVarString(playerid, "Senha", inputtext);
return true;
}
return true;
}
public OnGameModeExit() {
INI_Exit();
return true;
}
// =============== [ Funções ] ===========================================
ReadPlayerFile(id)
{
if(fexist(FormattedMessage("contas/%s.ini", GetPlayerNick(id)))) {
"Cancelar");
}
else {
ShowPlayerDialog(id,DIALOG_REGISTER, DIALOG_STYLE_PASSWORD, "Registrar Conta"," Bem vindo ao servidor "#NOME_SERVIDOR#"\nRegistre sua senha:", "Registrar","Cancelar");
}
return true;
}
// == [ Matar após x tempo ] ==
forward matarJogador(id);
public matarJogador(id) {
return SetPlayerHealth(id, 0.0);
}
IsValidString(string[]) {
for(new i; string[i]; ++i) {
if(!IsAlphaNum(string[i])) {
return false;
}
}
return true;
}
IsValidSkin(SkinID) {
return 300 > SkinID > -1;
}
GetPlayerNick(id) {
static szName[MAX_PLAYER_NAME];
return GetPlayerName(id, szName, MAX_PLAYER_NAME), szName;
}
Esta bastante otimizado. Bem organizado e tabulado. Também provavelmente terá atualizações neste mode, até que ele fique um DeathMatch razoável.
** Não utilizei processador de comandos por não usar comandos especiais.


09:21
Unknown
Posted in:
0 comentários:
Postar um comentário