Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #define FILTERSCRIPT
- #define MAX_LABELS (100)
- #define PASTA_LABELS "Labels/%d.lbl"
- #define SISTEMA_VERSAO "1.0"
- #define Dialog_Nova_Label_Cor 10001
- #define Dialog_Nova_Label_Distancia 10002
- #define Amarelo 0xFFFF00FF
- #define AzulForte 0x0000FFFF
- #define Laranja 0xFF5604FF
- #define Vermelho 0xFF0000FF
- #define Cyan 0x00F9F9FF
- #define Cinza 0xC0C0C0FF
- #define Verde 0x80FF80FF
- #define Rosa 0xFF00FFFF
- #define AmareloClaro 0xFFFF00FF
- #define AzulClaroI 0x00FFFFFF
- #define AzulClaroII 0x33CCFFFF
- #define Roxo 0xA02DD2FF
- #define RoxoClaro 0xE285FAFF
- #define VerdeClaro 0x00FF00FF
- #define Branco 0xFFFFFFFF
- #define Preto 0x000000FF
- #define VerdeOliva 0x9DAD80FF
- #include <a_samp>
- #include <DOF2>
- #include <ZCMD>
- #include <sscanf2>
- #if defined FILTERSCRIPT
- new LabelID;
- enum InfoLabel
- {
- Texto[500],
- Cor,
- Float:LocX,
- Float:LocY,
- Float:LocZ,
- Distancia,
- Mundo
- }
- new LabelInfo[MAX_LABELS][InfoLabel];
- public OnFilterScriptInit()
- {
- for(new i;i<MAX_LABELS;i++)
- {
- CarregarLabel(i);
- Create3DTextLabel(LabelInfo[i][Texto], LabelInfo[i][Cor], LabelInfo[i][LocX], LabelInfo[i][LocY], LabelInfo[i][LocZ], LabelInfo[i][Distancia], LabelInfo[i][Mundo], 0);
- }
- if(!DOF2_FileExists("Labels/LabelsCriadas.ini"))
- {
- DOF2_CreateFile("Labels/LabelsCriadas.ini");
- DOF2_SetInt("Labels/LabelsCriadas.ini", "Total de 3DTextLabels criadas", 0);
- DOF2_SaveFile();
- }
- else
- return 0;
- LabelID = DOF2_GetInt("Labels/LabelsCriadas.ini", "Total de 3DTextLabels criadas")+1;
- return 1;
- }
- public OnFilterScriptExit()
- {
- for(new i;i<MAX_LABELS;i++)SalvarLabel(i);
- DOF2_Exit();
- return 1;
- }
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- new Pasta[128], Float:Pos[3];
- LabelID = DOF2_GetInt("Labels/LabelsCriadas.ini", "Total de 3DTextLabels criadas")+1;
- format(Pasta, 128, PASTA_LABELS, LabelID);
- if(dialogid == Dialog_Nova_Label_Cor)
- {
- if(!response)return 0;
- if(response)
- {
- if(listitem == 0) LabelInfo[LabelID][Cor] = Amarelo; ShowPlayerDialog(playerid, Dialog_Nova_Label_Distancia, DIALOG_STYLE_INPUT, "{FFFF00}Distância:", "{FFFFFF}Abaixo, insira a distância para o player ver a nova label!", "Criar", "");
- if(listitem == 1) LabelInfo[LabelID][Cor] = AzulForte; ShowPlayerDialog(playerid, Dialog_Nova_Label_Distancia, DIALOG_STYLE_INPUT, "{FFFF00}Distância:", "{FFFFFF}Abaixo, insira a distância para o player ver a nova label!", "Criar", "");
- if(listitem == 2) LabelInfo[LabelID][Cor] = Laranja; ShowPlayerDialog(playerid, Dialog_Nova_Label_Distancia, DIALOG_STYLE_INPUT, "{FFFF00}Distância:", "{FFFFFF}Abaixo, insira a distância para o player ver a nova label!", "Criar", "");
- if(listitem == 3) LabelInfo[LabelID][Cor] = Vermelho; ShowPlayerDialog(playerid, Dialog_Nova_Label_Distancia, DIALOG_STYLE_INPUT, "{FFFF00}Distância:", "{FFFFFF}Abaixo, insira a distância para o player ver a nova label!", "Criar", "");
- if(listitem == 4) LabelInfo[LabelID][Cor] = Cyan; ShowPlayerDialog(playerid, Dialog_Nova_Label_Distancia, DIALOG_STYLE_INPUT, "{FFFF00}Distância:", "{FFFFFF}Abaixo, insira a distância para o player ver a nova label!", "Criar", "");
- if(listitem == 5) LabelInfo[LabelID][Cor] = Cinza; ShowPlayerDialog(playerid, Dialog_Nova_Label_Distancia, DIALOG_STYLE_INPUT, "{FFFF00}Distância:", "{FFFFFF}Abaixo, insira a distância para o player ver a nova label!", "Criar", "");
- if(listitem == 6) LabelInfo[LabelID][Cor] = Verde; ShowPlayerDialog(playerid, Dialog_Nova_Label_Distancia, DIALOG_STYLE_INPUT, "{FFFF00}Distância:", "{FFFFFF}Abaixo, insira a distância para o player ver a nova label!", "Criar", "");
- if(listitem == 7) LabelInfo[LabelID][Cor] = Rosa; ShowPlayerDialog(playerid, Dialog_Nova_Label_Distancia, DIALOG_STYLE_INPUT, "{FFFF00}Distância:", "{FFFFFF}Abaixo, insira a distância para o player ver a nova label!", "Criar", "");
- if(listitem == 8) LabelInfo[LabelID][Cor] = AzulClaroI; ShowPlayerDialog(playerid, Dialog_Nova_Label_Distancia, DIALOG_STYLE_INPUT, "{FFFF00}Distância:", "{FFFFFF}Abaixo, insira a distância para o player ver a nova label!", "Criar", "");
- if(listitem == 9) LabelInfo[LabelID][Cor] = AzulClaroII; ShowPlayerDialog(playerid, Dialog_Nova_Label_Distancia, DIALOG_STYLE_INPUT, "{FFFF00}Distância:", "{FFFFFF}Abaixo, insira a distância para o player ver a nova label!", "Criar", "");
- if(listitem == 10) LabelInfo[LabelID][Cor] = Roxo; ShowPlayerDialog(playerid, Dialog_Nova_Label_Distancia, DIALOG_STYLE_INPUT, "{FFFF00}Distância:", "{FFFFFF}Abaixo, insira a distância para o player ver a nova label!", "Criar", "");
- if(listitem == 11) LabelInfo[LabelID][Cor] = RoxoClaro; ShowPlayerDialog(playerid, Dialog_Nova_Label_Distancia, DIALOG_STYLE_INPUT, "{FFFF00}Distância:", "{FFFFFF}Abaixo, insira a distância para o player ver a nova label!", "Criar", "");
- if(listitem == 12) LabelInfo[LabelID][Cor] = Branco; ShowPlayerDialog(playerid, Dialog_Nova_Label_Distancia, DIALOG_STYLE_INPUT, "{FFFF00}Distância:", "{FFFFFF}Abaixo, insira a distância para o player ver a nova label!", "Criar", "");
- if(listitem == 13) LabelInfo[LabelID][Cor] = Preto; ShowPlayerDialog(playerid, Dialog_Nova_Label_Distancia, DIALOG_STYLE_INPUT, "{FFFF00}Distância:", "{FFFFFF}Abaixo, insira a distância para o player ver a nova label!", "Criar", "");
- if(listitem == 14) LabelInfo[LabelID][Cor] = VerdeOliva; ShowPlayerDialog(playerid, Dialog_Nova_Label_Distancia, DIALOG_STYLE_INPUT, "{FFFF00}Distância:", "{FFFFFF}Abaixo, insira a distância para o player ver a nova label!", "Criar", "");
- DOF2_SetInt(Pasta, "Cor", LabelInfo[LabelID][Cor]);
- GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
- LabelInfo[LabelID][LocX] = Pos[0];
- DOF2_SetFloat(Pasta, "PosicaoX", LabelInfo[LabelID][LocX]);
- LabelInfo[LabelID][LocY] = Pos[1];
- DOF2_SetFloat(Pasta, "PosicaoY", LabelInfo[LabelID][LocY]);
- LabelInfo[LabelID][LocZ] = Pos[2];
- DOF2_SetFloat(Pasta, "PosicaoZ", LabelInfo[LabelID][LocZ]);
- LabelInfo[LabelID][Mundo] = GetPlayerVirtualWorld(playerid);
- DOF2_SetInt(Pasta, "Mundo", LabelInfo[LabelID][Mundo]);
- }
- return 1;
- }
- if(dialogid == Dialog_Nova_Label_Distancia)
- {
- //new Pasta[128];
- LabelID = DOF2_GetInt("Labels/LabelsCriadas.ini", "Total de 3DTextLabels criadas")+1;
- format(Pasta, 128, PASTA_LABELS, LabelID);
- LabelInfo[LabelID][Distancia] = strval(inputtext);
- DOF2_SetInt(Pasta, "Distancia", LabelInfo[LabelID][Distancia]);
- Create3DTextLabel(LabelInfo[LabelID][Texto], LabelInfo[LabelID][Cor], LabelInfo[LabelID][LocX], LabelInfo[LabelID][LocY], LabelInfo[LabelID][LocZ], LabelInfo[LabelID][Distancia], LabelInfo[LabelID][Mundo], 0);
- DOF2_SetInt("Labels/LabelsCriadas.ini", "Total de 3DTextLabels criadas", LabelID);
- new Msg[128];
- format(Msg, 128, "{00FF00}Label ID: %d criada.", LabelID);
- SendClientMessage(playerid, -1, Msg);
- DOF2_SaveFile();
- SalvarLabel(LabelID);
- return 1;
- }
- return 1;
- }
- CMD:criarlabel(playerid, params[])
- {
- new TextoLabel[500], Pasta[128];
- LabelID = DOF2_GetInt("Labels/LabelsCriadas.ini", "Total de 3DTextLabels criadas")+1;
- format(Pasta, 128, PASTA_LABELS, LabelID);
- if(!IsPlayerAdmin(playerid))return SendClientMessage(playerid, -1, "{FF0000}Esse comando só pode ser executado por um admin RCON!");
- if(sscanf(params, "s[500]", TextoLabel))return SendClientMessage(playerid, -1, "{FF00FF}#{FFFFFF} Uso: /CriarLabel [Texto]");
- ShowPlayerDialog(playerid, Dialog_Nova_Label_Cor, DIALOG_STYLE_LIST, "{FFFF00}Cor:", "{FFFF00}Amarelo\n\
- {0000FF}Azul Forte\n\
- {FF5604}Laranja\n\
- {FF0000}Vermelho\n\
- {00F9F9}Cyan\n\
- {C0C0C0}Cinza\n\
- {80FF80}Verde\n\
- {FF00FF}Rosa\n\
- {00FFFF}Azul Claro I\n\
- {33CCFF}Azul Claro II\n\
- {A02DD2}Roxo\n\
- {E285FA}Roxo Claro\n\
- {FFFFFF}Branco\n\
- {000000}Preto\n\
- {9DAD80}Verde Oliva", "Selecionar", "");
- if(!DOF2_FileExists(Pasta))
- {
- DOF2_CreateFile(Pasta);
- strpack(LabelInfo[LabelID][Texto], TextoLabel);
- DOF2_SetString(Pasta, "Texto", LabelInfo[LabelID][Texto]);
- DOF2_SaveFile();
- }
- else
- {
- strpack(LabelInfo[LabelID][Texto], TextoLabel);
- DOF2_SetString(Pasta, "Texto", LabelInfo[LabelID][Texto]);
- DOF2_SaveFile();
- }
- return 1;
- }
- stock SalvarLabel(a)
- {
- new Pasta[128];
- format(Pasta, 128, PASTA_LABELS, LabelInfo[a]);
- if(!DOF2_FileExists(Pasta)) DOF2_CreateFile(Pasta);
- DOF2_SetString(Pasta, "Texto", LabelInfo[a][Texto]);
- DOF2_SetInt(Pasta, "Cor", LabelInfo[a][Cor]);
- DOF2_SetFloat(Pasta, "PosicaoX", LabelInfo[a][LocX]);
- DOF2_SetFloat(Pasta, "PosicaoY", LabelInfo[a][LocY]);
- DOF2_SetFloat(Pasta, "PosicaoZ", LabelInfo[a][LocZ]);
- DOF2_SetInt(Pasta, "Distancia", LabelInfo[a][Distancia]);
- DOF2_SetInt(Pasta, "Mundo", LabelInfo[a][Mundo]);
- }
- stock CarregarLabel(a)
- {
- new Pasta[128];
- format(Pasta, 128, PASTA_LABELS, LabelInfo[a]);
- strpack(LabelInfo[a][Texto], DOF2_GetString(Pasta, "Texto"));
- LabelInfo[a][Cor] = DOF2_GetInt(Pasta, "Cor");
- LabelInfo[a][LocX] = DOF2_GetFloat(Pasta, "PosicaoX");
- LabelInfo[a][LocY] = DOF2_GetFloat(Pasta, "PosicaoY");
- LabelInfo[a][LocZ] = DOF2_GetFloat(Pasta, "PosicaoZ");
- LabelInfo[a][Distancia] = DOF2_GetInt(Pasta, "Distancia");
- LabelInfo[a][Mundo] =DOF2_GetInt(Pasta, "Mundo");
- }
- stock DeletarLabel(a)
- {
- new Pasta[128];
- format(Pasta, 128, PASTA_LABELS, LabelInfo[a]);
- DOF2_SetString(Pasta, "Texto", "Empty");
- DOF2_SetInt(Pasta, "Cor", "0xFFFFFFFF");
- DOF2_SetFloat(Pasta, "PosicaoX", "0.0");
- DOF2_SetFloat(Pasta, "PosicaoY", "0.0");
- DOF2_SetFloat(Pasta, "PosicaoZ", "0.0");
- DOF2_SetInt(Pasta, "Distancia", "0.0");
- DOF2_SetInt(Pasta, "Mundo", "0");
- DOF2_RemoveFile(Pasta);
- }
- #else
- main()
- {
- print("Sistema de criação de label in-gane Carregado!");
- print(SISMTEMA_VERSAO);
- }
- #endif
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement