// This is a comment
// uncomment the line below if you want to write a filterscript
//#define FILTERSCRIPT
#include <a_samp>
#include <zcmd>
new Text:ScoreTextDraw[MAX_PLAYERS];
new Text:TDEditor_TD1;
new Text:TDEditor_TD2;
new Text:TDEditor_TD3;
new Text:TDEditor_TD4;
#if defined FILTERSCRIPT
public OnFilterScriptInit()
{
print("\n--------------------------------------");
print(" Blank Filterscript by your name here");
print("--------------------------------------\n");
return 1;
}
public OnFilterScriptExit()
{
return 1;
}
#else
main()
{
print("\n----------------------------------");
print(" Blank Gamemode by your name here");
print("----------------------------------\n");
}
#endif
public OnPlayerText(playerid,text[])
{
new Msg[128],Name[24],Float:Coords[3];
GetPlayerPos(playerid,Coords[0],Coords[1],Coords[2]);
GetPlayerName(playerid,Name,sizeof(Name));
format(Msg,sizeof(Msg),"%s diz: %s",Name,text);
for(new x = 0; x != MAX_PLAYERS; x++) {
if(IsPlayerInRangeOfPoint(x,20.0,Coords[0],Coords[1],Coords[2])) {
SendClientMessage(x,-1,Msg);
}
}
return false;
}
public OnGameModeInit()
{
// Don't use these lines if it's a filterscript
SetGameModeText("Scavenge Survive by SouthClaw");
SetTimer("AtualizarScore", 1000, true);
for(new x = 0; x < MAX_PLAYERS; x++)
{
ScoreTextDraw[x] = TextDrawCreate(507.500000, 79.866653, "SCORE: 1000000");
TextDrawBackgroundColor(ScoreTextDraw[x], 255);
TextDrawFont(ScoreTextDraw[x], 1);
TextDrawLetterSize(ScoreTextDraw[x], 0.440000, 1.500000);
TextDrawColor(ScoreTextDraw[x], -1);
TextDrawSetOutline(ScoreTextDraw[x], 0);
TextDrawSetProportional(ScoreTextDraw[x], 1);
TextDrawSetShadow(ScoreTextDraw[x], 1);
}
TDEditor_TD1 = TextDrawCreate(204.500000, 432.044464, "SCAVENGEKAIBILES.FORUMEIROS.COM");
TextDrawLetterSize(TDEditor_TD1, 0.400000, 1.600000);
TextDrawAlignment(TDEditor_TD1, 1);
TextDrawColor(TDEditor_TD1, -16776961);
TextDrawSetShadow(TDEditor_TD1, 0);
TextDrawSetOutline(TDEditor_TD1, 0);
TextDrawBackgroundColor(TDEditor_TD1, 255);
TextDrawFont(TDEditor_TD1, 1);
TextDrawSetProportional(TDEditor_TD1, 1);
TextDrawSetShadow(TDEditor_TD1, 0);
TDEditor_TD2 = TextDrawCreate(1126.500000, 80.488876, ".");
TextDrawLetterSize(TDEditor_TD2, 0.400000, 1.600000);
TextDrawTextSize(TDEditor_TD2, 0.000000, 1281.000000);
TextDrawAlignment(TDEditor_TD2, 2);
TextDrawColor(TDEditor_TD2, -1);
TextDrawUseBox(TDEditor_TD2, 1);
TextDrawBoxColor(TDEditor_TD2, 255);
TextDrawSetShadow(TDEditor_TD2, 0);
TextDrawSetOutline(TDEditor_TD2, 0);
TextDrawBackgroundColor(TDEditor_TD2, 255);
TextDrawFont(TDEditor_TD2, 1);
TextDrawSetProportional(TDEditor_TD2, 1);
TextDrawSetShadow(TDEditor_TD2, 0);
TDEditor_TD3 = TextDrawCreate(731.500000, 430.800140, ".");
TextDrawLetterSize(TDEditor_TD3, 0.400000, 1.600000);
TextDrawTextSize(TDEditor_TD3, 751.000000, 0.000000);
TextDrawAlignment(TDEditor_TD3, 3);
TextDrawColor(TDEditor_TD3, -1);
TextDrawUseBox(TDEditor_TD3, 1);
TextDrawBoxColor(TDEditor_TD3, 255);
TextDrawSetShadow(TDEditor_TD3, 0);
TextDrawSetOutline(TDEditor_TD3, 0);
TextDrawBackgroundColor(TDEditor_TD3, 255);
TextDrawFont(TDEditor_TD3, 1);
TextDrawSetProportional(TDEditor_TD3, 1);
TextDrawSetShadow(TDEditor_TD3, 0);
TDEditor_TD4 = TextDrawCreate(590.000000, 430.800018, "V1.0");
TextDrawLetterSize(TDEditor_TD4, 0.400000, 1.600000);
TextDrawAlignment(TDEditor_TD4, 1);
TextDrawColor(TDEditor_TD4, -16776961);
TextDrawSetShadow(TDEditor_TD4, 0);
TextDrawSetOutline(TDEditor_TD4, 0);
TextDrawBackgroundColor(TDEditor_TD4, 255);
TextDrawFont(TDEditor_TD4, 1);
TextDrawSetProportional(TDEditor_TD4, 1);
TextDrawSetShadow(TDEditor_TD4, 0);
return 1;
}
public OnGameModeExit()
{
return 1;
}
public OnPlayerConnect(playerid)
{
TextDrawShowForPlayer(playerid, Text:TDEditor_TD1);
TextDrawShowForPlayer(playerid, Text:TDEditor_TD2);
TextDrawShowForPlayer(playerid, Text:TDEditor_TD3);
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/kill", cmdtext, true, 10) == 0)
{
SetPlayerHealth(playerid, -100);
SendClientMessage(playerid, -1, "{FF0000}Vocк se matou!");
return 1;
}
return 0;
}
public OnPlayerClickPlayer(playerid, clickedplayerid, source)
{
return 1;
}
forward AtualizarScore();
public AtualizarScore()
{
for(new x = 0, y = GetMaxPlayers(); x != y; x++)
{
if(!IsPlayerConnected(x)) continue;
new STR[26];
format(STR, 26, "~r~Score: ~w~%d", GetPlayerScore(x));
TextDrawShowForPlayer(x, ScoreTextDraw[x]);
TextDrawSetString(ScoreTextDraw[x], STR);
}
return true;
}
CMD:ts(playerid, params[])
{
ShowPlayerDialog(playerid, 1, 2, "Team Speak 3 Kaibiles", "TSі: 167.114.35.209:11104", "Ok","Voltar");
return 1;
}
CMD:kill(playerid, params[])
{
SetPlayerHealth(playerid, -1);
SendClientMessage(playerid, -1, "{FF0000}Vocк morreu!");
return 1;
}
CMD:crafts(playerid, params[])
{
ShowPlayerDialog(playerid, 1,2, "Crafts", "Lista De Crafts\n- Fogos de Artificio + Fonte de Energia = IED\n- Faca + Paraquedas = Mochila de Paraquedas\n- Faca + Roupas = Bandagem\n- Garrafa + Bandagem = Motolov Vazio\n- TNT + Temporizador = TNT Cronometrada\n- TNT + Aceleromкtro = TNT Mina Terrestre\n- TNT + Sensor de Movimento = TNT de Proximidade\n- TNT + Celular = TNT Sincronizada\n- IED + Temporizador = IED Cronometrado", "Ok", "Fechar");
SendClientMessage(playerid, 1, "{FF0000}Vocк abriu a lista de crafts!");
SendClientMessage(playerid, 1, "{FF0000}Temos o comando /crafts2");
SendClientMessage(playerid, 1, "{FF0000}Temos o comando /crafts3");
return 1;
}
CMD:crafts2(playerid, params[])
{
ShowPlayerDialog(playerid, 1,2, "Crafts 2", "Lista De Crafts 2\n- IED + Acelerometro = IED Terrestre\n- IED + Sensor de Movimento = IED de Proximidade\n- IED + Celular = IED Sincronizado\n- Unidade Flutuadora + Temporizador = EMP Cronometrada\n- Unidade Flutuadora + Acelerometro = EMP Terrestre\n- Unidade Flutuadora + Sensor de Movimento = EMP de Proximidade\n- Caixa Pequena + Caixa Pequena = Fogueira\n- Caixa Pequena + Caixa Mйdia = Fogueira", "Ok", "Fechar");
SendClientMessage(playerid, 1, "{FF0000}Temos o comando /crafts3");
return 1;
}
CMD:crafts3(playerid, params[])
{
ShowPlayerDialog(playerid, 1,2, "Crafts 3", "Lista De Crafts 3\n- Caixa Mйdia + Caixa Pequena = Fogueira\n- Bateria + Caixa de Fusiveis = Fonte de Energia\n- Temporizador + Hard Drive = Fonte de Alimentaзгo\n- Celular + Teclado = Unidade I/O\n- Fonte de Energia + Unidade Flutuadora = Fluxo de Capacitor\n- Fonte de Energia + Temporizador = Motor\n- Motor + Chave = Kit de Chaveiros\n- Motor + Unidade Flutuadora = Motor Avanзado\n- Unidade I/O + Fonte de Energia = Teclado Avanзado", "Ok", "Fechar");
return 1;
}
CMD:ajudareparo(playerid, params[])
{
SendClientMessage(playerid, -0, "{FFFFE0}Se o motor do veнculo estiver {FF0000}Vermelho {FFFFF0}pegue a chave de roda e segure {FF8C00} 'F'{FFFFE0}!");
SendClientMessage(playerid, -0, "{FFFFF0}Se o motor do veнculo estiver {FF8C00}Laranja {FFFFF0}pegue a chave de fenda e segure {FF8C00}'F'{FFFFF0}!");
SendClientMessage(playerid, -0, "{FFFFF0}Se o motor do veнculo estiver {FFD700}Amarelo {FFFFF0}pegue o martelo e segure {FF8C00}'F'{FFFFF0}!");
SendClientMessage(playerid, -0, "{FFFFF0}Agora para o motor do veнculo ficar pronto basta passar a chave de roda novamente!");
return 1;
}
Eu queria saber se tem como algum ser humano bom nessa terra me ajudar com uma coisa que estб virando uma dor de cabeзa pra mim, bom na verdade sгo duas coisas, 1є Serб possнvel criar um chat de novatos?
Exemplo de como irб funcionar e qual a logica. O Player Joaozinho digita /cn [Duvida dele aqui] Dai o Player Carlos digita /cn [E carlos responde a duvida de joaozinho] Logica:Os players iniciantes no servidor poderгo pedir ajuda no /cn quando os administradores estiverem off E eu queria que apenas os players de 0 de score atй o 20 poder usar este chat. 2є Duvida: Eu Fiz um fs de vбrios sistemas, interface, textdraws, comandos etc.. Aqui em minha gm ta funcionando normal, a do meu amigo estava funcionando normal mas agora nгo estб pegando mais nenhum comando. se alguem poder me ajudar ai... Code PHP код:
|
//#define FILTERSCRIPT // Descomenta aqui se for um FS mesmo // Caso descomentar a linha de cima, remova essas coisas #if defined FILTERSCRIPT #else main() { print("\n----------------------------------"); print(" Blank Gamemode by your name here"); print("----------------------------------\n"); } #endif public OnGameModeInit() //O que estб aqui, vocк pхe na OnFilterScriptInit { return 1; } public OnGameModeExit() { return 1; }
CMD:cn(playerid, params[])
{
if(GetPlayerScore(playerid) > 20) return SendClientMessage(playerid, 0xFF0000FF, "| ERRO | Vocк possui mais de 20 scores");
new str[144];
if(sscanf(params, "s[128]", str)) return SendClientMessage(playerid, 0xFF0000FF, "Uso: /cn [Mensagem]");
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid, name, sizeof(name));
format(str, sizeof(str), "[Chat-Novato] %s (%i): %s", name, playerid, str);
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i) && GetPlayerScore(i) <= 20)
{
SendClientMessage(i, -1, str);
}
}
return 1;
}
CMD:cn(playerid, params[]){ if(VariaveldaEnum[playerid][VariavelLevel] > 20) return SendClientMessage(playerid, 0xFF0000AA, "Vocк й um jogador maior que o level 20 e nгo tem permissгo mais para usar o chat!"); if(isnull(params)) return SendClientMessage(playerid, 0xBBBBBBFF, "Use: /cn [Texto]"), SendClientMessage(playerid, 0xFF0000AA, "OBS: Este chat й apenas para ajuda!"); format(string, sizeof string, "(Chat Novato) %s (%d): %s", StockNome(playerid), playerid, params); SendClientMessageToAll(0x009966AA, string); return 1; }
new bool:playerAdmin[MAX_PLAYERS];
public OnPlayerConnect(playerid)
{
playerAdmin[playerid] = false;//reseta a variбvel ao jogador se conectar
return 1;
}
//Para setar um jogador administrador, vocк deve:
playerAdmin[playerid] = true;//setar o valor da variбvel de controle para true
//Use GetPlayerScore(playerid) para obter o score do jogador: https://sampwiki.blast.hk/wiki/GetPlayerScore
if(GetPlayerScore(playerid) <= 20)//valida se o score do jogador й menor ou igual a 20
{
for(new i; i <= GetPlayerPoolSize(); i++)//loop feito usando GetPlayerPoolSize para obter o maior id online, o que economia muito processamento ao invйs de usar MAX_PLAYERS.
{
if(IsPlayerConnected(i) && playerAdmin[i])//valida se o jogador que estiver rodando no loop estб online e й administrador
{
//mande a mensagem ao administrador
}
}
}
CMD:texto(playerid, params[])
{
printf("O jogador %d escreveu %s", playerid, params);
return 1;
}