Jump to content

[PAWN] Player Armour


Tupi
 Share

Recommended Posts

~ GetPlayerArmour & SetPlayerArmour ~

 

 

Înainte de toate eu am folosit include-ul: a_samp, sscanf2, zcmd și am definit SCM-ul

#include <a_samp>
#include <zcmd>
#include <sscanf2>
  
#define SCM SendClientMessage

 

Putem crea o comandă prin care să aflăm nivelul de armură unui jucător folosindu-ne de:

GetPlayerArmour(playerid, Float:armour)
CMD:getarmour(playerid, params[])
{
    new id, Float:armour, string[128], playername[16];
    if(sscanf(params, "u", id)) return SCM(playerid, -1, "Use: /getarmour <PlayerID>"); 
    if(!IsPlayerConnected(id)) return SCM(playerid, -1, "Player not connected");
  
    GetPlayerName(id, playername, 16);
    GetPlayerArmour(id, armour);
    
    format(string, 128, "%s are %0.2f armura", playername, armour);
    SCM(playerid, -1, string);
      
    return 1;
}

 

Putem crea o comandă prin care să setăm nivelul de viață a unui jucător folosindu-ne de:

SetPlayerArmour(playeid, Float:armour);
CMD:setarmour(playerid, params[])
{
    new id, string[128], sendername[16], receivername[16];
    if(sscanf(params, "ui", id, health)) return SCM(playerid, -1, "Use: /gethp <Name/Playerid> <Health>")
    if(!IsPlayerConnected(id) || id == INVALID_PLAYER_ID) return SCM(playerid, -1, "Error: Player not connected!");
    if(health < 0 || health > 100) return SCM(playerid, -1, "Invalid health);
    
    GetPlayerName(playerid, sendername, 16);
    GetPlayerName(id, receivername, 16);
    SetPlayerArmour(id, health);
    format(string, sizeof(string), "I-ai setat armura lui %s la %d.", receivername, health);
    SCM(playerid, -1, string);
    format(string, sizeof(string), "%s ti-a setat armura la %d.", sendername, health);
    SCM(id, -1, string);
      
    return 1;
}

 

Nota: Această metodă poate fi folosită și în callback-uri care sunt apelate de timere sau de alte callback-uri.

forward DecreaseArmour(playerid)
public DecreaseArmour(playerid)
{
    new Float: armour;
    GetPlayerArmour(playerid, armour);
    SetPlayerArmour(playerid, armour-10.0);
    if(armour-10.0 < 0.0) SetPlayerArmour(playerid, 0.0);
    return 1;
}

* În momentul în care callback-ul DecreaseArmour este apelat jucătorul cu ID-ul pe care îl conține primeste -10 armură.

* Pentru orice întrebare/nelămurire puteți trimite un PM la un Programmer sau să deschideți un topic in secțiunea Help and Discussions.

Edited by Tupi
Link to comment
Share on other sites

  • Tupi locked this topic
Guest
This topic is now closed to further replies.
 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.