[CAMPANIE STAFF]Cautam moderatori si designeri activi!
Welcome to WTFCS Community Forums!
Servere gaming la super-preturi! [HOSTING SERVICE]
-->






[PAWN] GiveGunAll Command
Author : mihay111, Category : Tutoriale, 0 Replyes, 617 Views
EVALUATE THIS TOPIC
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
1 Guest(s)
Moderator
     
577
POSTS
452
THREADS
190
REPUTATION
Male
Sex

WtfCs Coins: 0.15[w]

Suit Member
12-18-2020, 05:47 PM
#1
Creat de Tupi

În acest tutorial vă voi prezenta cum se poate realiza comanda prin care puteți să dați o anumită armă jucătorilor pe o anumită rază
 
Înainte de toate eu am folosit include-ul: a_sampsscanf2zcmdforeach și am definit SCM-ul


Code:
#include <a_samp>
#include <zcmd>
#include <sscanf2>
#include <foreach>
 
#define SCM SendClientMessage
Acum vom crea comanda în sine prin care vom seta nivelul de viață jucătorilor pe o anumită rază.

Code:
CMD:givegunall(playerid, params[])
{
   new range, gun, gunname[16], ammo, Float: Pos[3], string[128], sendername[16]; //ne cream variabilele de care avem nevoie
   //eu verificarea pentru admin o voi face in felul urmator, adica daca este logat cu parola RCON
   if(!IsPlayerAdmin(playerid)) return SCM(playerid, -1, "Eroare: Nu ai acces la aceasta comanda!");
   //insa voi o puteti face in functie de enum-ul pe care il aveti in gamemode (ex: if(PlayerInfo[playerid][pAdmin] < 1) )
   if(sscanf(params, "iii", gun, ammo, range)) return SCM(playerid, -1, "Use: /givegunall <Gun> <Ammo> <Range>"); //verificam daca in sintaxa comenzii s-au folosit 3 valori
   if(gun < 1 || gun > 46) return SCM(playerid, -1, "Error: Invalid weapon (1 - 46)!"); //daca arma folosita este mai mica de 0 sau mai mare de 46 returnam un mesaj informativ
 
   GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]); //salvam coordonatele celui care foloseste comanda
   GetPlayerName(playerid, sendername, 16); //salvam numele celui care foloseste comanda
 
   foreach(Player, i) { //scanam toti jucatorii de pe server
        if(IsPlayerConnected(i) && IsPlayerInRangeOfPoint(i, range, Pos[0], Pos[1], Pos[2])) { //verificam daca jucatorul este conectat si daca este in apropierea celui care foloseste comanda pe raza folosita
         GivePlayerWeapon(i, gun, ammo);
         GetWeaponName(gun, gunname, 16);
         GetPlayerName(playerid, sendername, 16);
         
         format(string, sizeof(string), "Ai primit un %s cu %d gloante de la adminul %s", gungame, ammo, sendername); //formatam un mesaj in felul urmator pentru informarea jucatorului
         SCM(i, -1, string); //le trimitem mesajul formatat
       }
   }
     
   return 1;
}
Cam aceasta este comanda prin care un admin de nivel X sau X+ poate să ofere o armă tuturor jucătorilor pe o anumită rază. Sper că v-a fost de ajutor acest tutorial.


Forum Jump: