Szerző Téma: Rang = felírat, Rádió  (Megtekintve 589 alkalommal)

Rang = felírat, Rádió
« Dátum: 2013. április 28. - 11:05:24 »
0 Show voters
CMD:radio(playerid,params[])
{
new Rang[128];
        if(IsPlayerConnected(playerid))
        {
            if(PlayerInfo[playerid][pFrakcio] == 1)
            {
                new radio[128];
                if(sscanf(params,\"s[128]\",radio))return SendClientMessage(playerid,GREEN,\"Használat:/(r)ádió <Szöveg>\");
                format(string1,sizeof(string1),\"[RÁDIÓ]%s [%d] mondja: %s\",Neve(playerid),Rang,radio);
                SendFrakcioMessage(1,GREEN,string1);
                format(string1,sizeof(string1),\"[RÁDIÓ]Valaki mondja: %s\",radio);
                ProxDetector(playerid,GREEN,string1,6.0);
if(PlayerInfo[playerid][pRank] == 0) { Rang = \"Kadét\"; }
   }
       }
       return 1;
}
         

 
Helló, van egy ilyen parancsom. Ebben a hiba, hogy én a kadét felíratot szeretném látni a rádióba a neve melett, de nem jön össze sehogy.. Help me :D

Nem elérhető doboka98

  • 1002
    • Profil megtekintése
Rang = felírat, Rádió
« Válasz #1 Dátum: 2013. április 28. - 11:23:51 »
+1 Show voters
CMD:radio(playerid,params[])
{
new Rang[128];
        if(IsPlayerConnected(playerid))
        {
            if(PlayerInfo[playerid][pFrakcio] == 1)
            {
                new radio[128];
                if(sscanf(params,\"s[128]\",radio))return SendClientMessage(playerid,GREEN,\"Használat:/(r)ádió <Szöveg>\");
                if(PlayerInfo[playerid][pRank] == 0) { Rang = \"Kadét\"; }
                format(string1,sizeof(string1),\"[RÁDIÓ]%s [%s] mondja: %s\",Neve(playerid),Rang,radio);
                SendFrakcioMessage(1,GREEN,string1);
                format(string1,sizeof(string1),\"[RÁDIÓ]Valaki mondja: %s\",radio);
                ProxDetector(playerid,GREEN,string1,6.0);
           }
       }
       return 1;
}

 
A Rang formázását fönnébb kell rakni, mert ugye a szkript fentrõl lefele fut le. Tehát hiába formázod meg, ha már elküldted az üzenetet :) . És a rang az szöveg(%s) és nem integer, vagyis egész szám(%d).
« Utoljára szerkesztve: 2013. április 28. - 11:26:38 írta doboka98 »

Rang = felírat, Rádió
« Válasz #2 Dátum: 2013. április 28. - 11:50:44 »
0 Show voters
Köszi, de pl még abban tudnál segíteni, hogy ha pl én több parancshoz szeretnék vagy 10-en + rangot, akkor egyszerûbben letudnám? Mármint hogy nem kellene mindhez mindet oda másolnom.

Nem elérhető doboka98

  • 1002
    • Profil megtekintése
Rang = felírat, Rádió
« Válasz #3 Dátum: 2013. április 28. - 12:11:16 »
+1 Show voters
Csinálsz egy GetPlayerRang függvényt (stock). Elküldöm neked az enyémet, alakítsd át a saját változóidra, ha valamit nem értesz, írj bátran.
 
stock GetPlayerRang(playerid)
{
new lvl[32+1];
if(pInfo[playerid][frakcio] == 0)
{
lvl = \"-\";
}
if(pInfo[playerid][frakcio] == 1)
{
switch(pInfo[playerid][rang])
{
            case 1: lvl = \"Kadét\";
            case 2: lvl = \"Õrmester\";
            case 3: lvl = \"Zászlós\";
            case 4: lvl = \"Hadnagy\";
            case 5: lvl = \"Ezredes\";
            case 6: lvl = \"Tábornok\";
}
}
if(pInfo[playerid][frakcio] == 2)
{
switch(pInfo[playerid][rang])
{
            case 1: lvl = \"\";
            case 2: lvl = \"\";
            case 3: lvl = \"\";
            case 4: lvl = \"\";
            case 5: lvl = \"\";
            case 6: lvl = \"\";
}
}
if(pInfo[playerid][frakcio] == 3)
{
   switch(pInfo[playerid][rang])
{
            case 1: lvl = \"\";
            case 2: lvl = \"\";
            case 3: lvl = \"\";
}
}
if(pInfo[playerid][frakcio] == 4)
{
   switch(pInfo[playerid][rang])
{
            case 1: lvl = \"\";
            case 2: lvl = \"\";
            case 3: lvl = \"\";
}
}
      return lvl;
}

Rang = felírat, Rádió
« Válasz #4 Dátum: 2013. április 28. - 12:41:13 »
0 Show voters
Á nagyon köszi! Ment a +!

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal