Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //topo:
- new barreira[MAX_PLAYERS][10]; //10 barreiras por jogador
- new barcount[MAX_PLAYERS];
- //no OnPlayerCommandText:
- if(!strcmp(cmdtext, "/barreira", true))
- {
- new Float:x, Float:y, Float:z, Float:a, string[128], barreiraid;
- if(barcount[playerid] < 10)
- {
- GetPlayerPos(playerid, x, y, z);
- GetPlayerFacingAngle(playerid, a);
- GetXYInFrontOfPlayer(playerid, x, y, 1.0);
- for(new i; i < 10; i++)
- {
- if(!barreira[playerid][i])
- {
- barreiraid = i;
- break;
- }
- }
- barreira[playerid][barreiraid] = CreateObject(981, x, y,z, 0.0, 0.0, a);
- format(string, sizeof string, "ID dessa barreira: %d; Use \"/dbarreira %d\" para destruí-la.", barreiraid, barreiraid);
- SendClientMessage(playerid, 0xFF0000AA, string);
- barcount[playerid]++;
- } else {
- SendClientMessage(playerid, 0xFF0000AA, "Você já criou 10 barreiras, destrua uma com /dbarreira");
- }
- return 1;
- }
- if(!strcmp(cmd, "/dbarreira", true))
- {
- new tmp[256], barreiraid;
- tmp = strtok(cmdtext, idx);
- if(!strlen(tmp))
- return SendClientMessage(playerid, 0xFFFFFFAA, "USE: /dbarreira [id_barreira]");
- barreiraid = strval(tmp);
- if(0 <= barreiraid < 10)
- {
- if(barreira[playerid][barreiraid])
- {
- DestroyObject(barreira[playerid][barreiraid]);
- barreira[playerid][barreiraid] = 0;
- barcount[playerid]--;
- } else {
- SendClientMessage(playerid, 0xFF0000AA, "ID de barreira não criada!");
- }
- } else {
- SendClientMessage(playerid, 0xFF0000AA, "ID de barreiras entre 0 e 9!");
- }
- return 1;
- }
- //no OnPlayerDisconnect
- for(new i; i < 10; i++)
- {
- if(barreira[playerid][i])
- DestroyObject(barreira[playerid][i]);
- barreira[playerid][i] = 0;
- }
- barcount[playerid] = 0;
- //no fim do mode:
- stock GetXYInFrontOfPlayer(playerid, &Float:x, &Float:y, Float:distance)
- { // Created by Y_Less
- new Float:a;
- GetPlayerPos(playerid, x, y, a);
- GetPlayerFacingAngle(playerid, a);
- if (GetPlayerVehicleID(playerid)) {
- GetVehicleZAngle(GetPlayerVehicleID(playerid), a);
- }
- x += (distance * floatsin(-a, degrees));
- y += (distance * floatcos(-a, degrees));
- }
Add Comment
Please, Sign In to add comment