Szerző Téma: /heal parancs  (Megtekintve 2077 alkalommal)

/heal parancs
« Dátum: 2012. március 24. - 15:19:49 »
0 Show voters
Hy :D
Kéne egy olyan,hogy /heal [iD] és feltölti másnak az életét.
Köszönöm :D

Nem elérhető Gabor..

  • 1883
  • Gabor..
    • Profil megtekintése
/heal parancs
« Válasz #1 Dátum: 2012. március 24. - 15:40:22 »
+1 Show voters
CMD:heal(playerid, params[])
{
   new
         string[128],
         name[MAX_PLAYER_NAME],
         PID,
         ertek;
  if(sscanf(params, \"u\", PID)) return SendClientMessage(playerid,0xFF0000AA, \"Használat: /heal <ID/Játékos név>);
  if(ertek < 0 || ertek > 100) return SendClientMessage(playerid,0xFF0000AA, \"Rossz érték! (0-100));
  SetPlayerHalth(PID, ertek);
  GetPlayerName(playerid, name, MAX_PLAYER_NAME);
  format(string, sizeof(string), \"Feltöltötted %s nevû játékos életét!\", name);
  SendClientMessage(playerid, 0x33CCFFAA, string);
  return 1;
}

 Tessék! :)
« Utoljára szerkesztve: 2012. március 24. - 15:48:08 írta Gabor.. »

Nem elérhető Erik3333

  • 945
  • SMF | phpBB | TS3 | PHP | HTML | CSS | JS | PAWN | JAVA
    • Profil megtekintése
/heal parancs
« Válasz #2 Dátum: 2012. március 24. - 15:41:00 »
0 Show voters
Tessék:
[pawn]   
if(strcmp, \"/heal\", cmd, true, 10) == 0)
    {
         SetPlayerHealth(playerid, 100); // 100-re tölti a játékos életét
         SendClientMessage(playerid, SZÍN, \"Feltöltötted a játékos életét!\");
         return 1;
    }
[/pawn]

Nem elérhető Gabor..

  • 1883
  • Gabor..
    • Profil megtekintése
/heal parancs
« Válasz #3 Dátum: 2012. március 24. - 15:54:16 »
0 Show voters
Idézetet írta: Erik3333 date=1332600060\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"18994\" data-ipsquote-contentclass=\"forums_Topic
Tessék:
 
    
if(strcmp, \"/heal\", cmd, true, 10) == 0)
    {
         SetPlayerHealth(playerid, 100); // 100-re tölti a játékos életét
         SendClientMessage(playerid, SZÍN, \"Feltöltötted a játékos életét!\");
         return 1;
    }

 

Ez nem jó, mert õ nem a saját élet szintjét akarja feltölteni, hanem egy másik játékosét! Ezért használatos a sccanf, és a zcmd!
« Utoljára szerkesztve: 2012. március 24. - 16:13:34 írta Gabor.. »

/heal parancs
« Válasz #4 Dátum: 2012. március 24. - 16:49:16 »
0 Show voters
Köszi gabor!
De nem tudnád átalakítani nem zcmd-re?
Mert a módom nem zcmd-s hanem
if(strcmp(cmd, \"/parancs\", true) == 0) {

 
-os és azért :)
Ha átalakítanád megköszönném.

Nem elérhető Erik3333

  • 945
  • SMF | phpBB | TS3 | PHP | HTML | CSS | JS | PAWN | JAVA
    • Profil megtekintése
/heal parancs
« Válasz #5 Dátum: 2012. március 24. - 16:54:53 »
0 Show voters
Próbáld ki ezt:
 
   if (strcmp(\"/heal\", cmdtext, true, 10) == 0)
{
    new tmp[8], id, Float:Heal;
   if(!strlen(tmp)) return SendClientMessage(playerid, -1, \"Használat: /heal <PlayerID>\");
GetPlayerHealth(id, Heal);
SetPlayerHealth(id, Heal);
SendClientMessage(id, -1, \"Valaki beállította az életed!\");
SendClientMessage(playerid, -1, \"Sikeresen beállítottad a játékos életét!\");
return 1;
}

Nem elérhető Gabor..

  • 1883
  • Gabor..
    • Profil megtekintése
/heal parancs
« Válasz #6 Dátum: 2012. március 24. - 17:29:21 »
0 Show voters
Átírnám, de strcmpben nem lehet használni sscanfot, és a többi paraméter beolvasót nem nagyon vágom, csak a sscanfot :( De ha jóltudom a zcmd, és a strcmp megfér egymás melett csak a CMD helyre COMMAND-ot írj, és az OnPlayerCommandText alá rakod, vagy csak valahova, nemtudom, egyik jó (Asszem) :D
« Utoljára szerkesztve: 2012. március 24. - 17:31:18 írta Gabor.. »

/heal parancs
« Válasz #7 Dátum: 2012. március 24. - 18:06:23 »
0 Show voters
:S
megpróbáltam de nem jó

Nem elérhető Gabor..

  • 1883
  • Gabor..
    • Profil megtekintése
/heal parancs
« Válasz #8 Dátum: 2012. március 24. - 18:19:55 »
0 Show voters
Fúh, hát akkor nemtudom, de annyit tudok, hogy lehet a kettõt egyszerre alkalmazni, csak az a kérdés, hogy hogyan. :D

Nem elérhető Benceee

  • 4785
    • Profil megtekintése
/heal parancs
« Válasz #9 Dátum: 2012. március 25. - 08:58:38 »
0 Show voters
if(strcmp(cmdtext,\"/heal\",true) == 0)
{
   new
         string[128],
         name[MAX_PLAYER_NAME],
         PID,
         ertek;
  if(sscanf(cmdtext, \"u\", PID)) return SendClientMessage(playerid,0xFF0000AA, \"Használat: /heal <ID/Játékos név>);
  if(ertek < 0 || ertek > 100) return SendClientMessage(playerid,0xFF0000AA, \"Rossz érték! (0-100));
  SetPlayerHalth(PID, ertek);
  GetPlayerName(playerid, name, MAX_PLAYER_NAME);
  format(string, sizeof(string), \"Feltöltötted %s nevû játékos életét!\", name);
  SendClientMessage(playerid, 0x33CCFFAA, string);
  return 1;
}

 
Nem biztos, hogy jó. Azt hallottam, hogy így is lehet. Én ZCMD-t használok, ezért csak ahhoz értek.:D

Nem elérhető #Nexus#

  • 1374
    • Profil megtekintése
/heal parancs
« Válasz #10 Dátum: 2012. március 25. - 11:13:17 »
0 Show voters
Itt van ez a ZCMD-s parancs
[pawn]CMD:heal(playerid, params[])
{
   new
         string[128],
         name[MAX_PLAYER_NAME],
         PID,
         ertek;
  if(sscanf(params, \"u\", PID)) return SendClientMessage(playerid,0xFF0000AA, \"Használat: /heal <ID/Játékos név>);
  if(ertek < 0 || ertek > 100) return SendClientMessage(playerid,0xFF0000AA, \"Rossz érték! (0-100));
  SetPlayerHalth(PID, ertek);
  GetPlayerName(playerid, name, MAX_PLAYER_NAME);
  format(string, sizeof(string), \"Feltöltötted %s nevû játékos életét!\", name);
  SendClientMessage(playerid, 0x33CCFFAA, string);
  return 1;
}[/pawn]
http://sampforum.hu/index.php?topic=4562.0
ennek segítségével tudod használni mindkettõ parancsot a zcmd-t is meg a másikat is sok szerencsét ha elakadnál írj !

/heal parancs
« Válasz #11 Dátum: 2012. március 25. - 11:21:46 »
0 Show voters

if(strcmp(cmd, \"/sethp\", true) == 0)
{
    if(IsPlayerConnected(playerid))
    {
   tmp = strtok(cmdtext, idx);
   if(!strlen(tmp))
   {
      SendClientMessage(playerid, COLOR_GRAD2, \"USAGE: /sethp [playerid/PartOfName] [health]\");
      return 1;
   }
   new playa;
   new health;
   playa = ReturnUser(tmp);
   tmp = strtok(cmdtext, idx);
   health = strval(tmp);
       if(IsPlayerConnected(playa))
       {
           if(playa != INVALID_PLAYER_ID)
           {
            SetPlayerHealth(playa, health);
      }
                            }
   else
   {
      SendClientMessage(playerid, COLOR_GRAD1, \"  Rossz ID!\");
   }
}
return 1;
}

 
Not tested

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal