Szerző Téma: Kick parancs használat  (Megtekintve 689 alkalommal)

Kick parancs használat
« Dátum: 2016. Január 11. - 21:08:18 »
0 Show voters
Sziasztok! Írtam egy kick parancsot, viszont hogyha beírom csak simán, hogy /kick, akkor azt írja ki, hogy magadat nem rúghatod ki!
És nem ezt szeretném, hanem azt, hogy Használata:....Kérdésem az lenne, hogy a használatát hova tegyem?
 
CMD:kick(playerid, params[])
{
new string[256];
new string2[256];
new kickeltid;
new ok[128];
new kickeltnev[MAX_PLAYER_NAME];
if(Belepve[playerid]==1)
{
    if(JatekosInfo[playerid][Admin]>=2)
    {
                        if(sscanf(params, \"{u[MAX_PLAYER_NAME]}{z[128]}\", kickeltid, ok))
                        {
                           if(kickeltid==INVALID_PLAYER_ID) return SendClientMessage(playerid, -1, \"{ff0000}(( Angel Pine RPG: {ffffff}Nincs ilyen játékos! {ff0000}))\");
               else if(kickeltid==playerid) return SendClientMessage(playerid, -1, \"{ff0000}(( Angel Pine RPG: {ffffff}Magadat nem rúghatod ki! {ff0000}))\");
               else if(JatekosInfo[kickeltid][Admin] >= JatekosInfo[playerid][Admin])return SendClientMessage(playerid, -1, \"{ff0000}(( Angel Pine RPG: {ffffff}Veled egyforma vagy nálad nagyobb rangú játékost nem rúghatsz ki! {ff0000}))\");
               SetTimer(\"kick\", 500, 0);
                            GetPlayerName(playerid, nev, sizeof(nev));
                            GetPlayerName(kickeltid, kickeltnev, sizeof(kickeltnev));
                 format(string, sizeof(string), \"{ff0000}(( Angel Pine RPG: %s ki lett rúgva %s által. | Indok: %s {ff0000}))\", kickeltnev, nev, ok);
                 SendClientMessageToAll(-1, string);
               format(string2, sizeof(string2), \"{ff0000}(( Angel Pine RPG: {ffffff}Ki lettél rúgva {ff0000}%s {ffffff}által. | Indok: {ff0000}%s ))\", playerid, ok);
               SendClientMessage(playerid, -1, string2);
               printf(\"%s ki lett rúgva %s által. | Indok: %s \", kickeltnev, nev, ok);
                        }else SendClientMessage(playerid, -1, \"{ff0000}(( Angel Pine RPG: {c4ff00}Használat: /kick [Játékos ID/ Név] [indok] {ff0000}))\");
}else SendClientMessage(playerid, -1, \"{ff0000}(( Angel Pine RPG: {ffffff}Nincs jogod a parancs használatához! {ff0000}))\");
}
return 1;
}

Nem elérhető 1Mark6

  • 437
    • Profil megtekintése
Kick parancs használat
« Válasz #1 Dátum: 2016. Január 12. - 07:10:46 »
0 Show voters
Az első ami szembetünt, az az hogy {,} jeleket használsz sscanf darabolásnál.
A sscanfba ezek a jelek a kihagyást, jelentik. és mivel mind a kettőt kihagyod ezért fordulhat elő a problémád.
És ha már egyszer, a kickeltid nevű változó, az integer akkor a darabolás mentén ne legyen u[MAX_PLAYER_NAME]
« Utoljára szerkesztve: 2016. Január 12. - 07:14:09 írta 1Mark6 »

Kick parancs használat
« Válasz #2 Dátum: 2016. Január 12. - 08:00:02 »
0 Show voters
a \"kick\" függvényeget megnézném.. hogy mi alapján dobod ki a játékost, ha nincs mellé paraméter megadva :)
oké, hogy szinezgetni nagyon tudsz, és szeretsz, de ezt leszámítva egy halom figyelmetlenség, és hiba az egész..
angel pine egy kis hely, kezdő RPGnek megfelel, de ha ilyen alapvető hibákat ejtessz, inkább kezdj valami egyszerűbbel. :)
 
CMD:kick(playerid, params[])
{
new string[128];
new kickeltid;
new ok[128];
new nev[MAX_PLKAYER_NAME];
new kickeltnev[MAX_PLAYER_NAME];
if(Belepve[playerid] == 0) return SendClientMessage(playerid, -1, \"{ff0000}(( Angel Pine RPG: {ffffff}Nincs jogod a parancs használatához! {ff0000}))\");
if(JatekosInfo[playerid][Admin] < 2) return SendClientMessage(playerid, -1, \"{ff0000}(( Angel Pine RPG: {ffffff}Nincs jogod a parancs használatához! {ff0000}))\");
if(sscanf(params, \"u[MAX_PLAYER_NAME]{z[128]}\", kickeltid, ok)) return SendClientMessage(playerid, -1, \"{ff0000}(( Angel Pine RPG: {c4ff00}Használat: /kick [Játékos ID/ Név] [indok] {ff0000}))\");
if(kickeltid == INVALID_PLAYER_ID) return SendClientMessage(playerid, -1, \"{ff0000}(( Angel Pine RPG: {ffffff}Nincs ilyen játékos! {ff0000}))\");
if(kickeltid == playerid) return SendClientMessage(playerid, -1, \"{ff0000}(( Angel Pine RPG: {ffffff}Magadat nem rúghatod ki! {ff0000}))\");
if(JatekosInfo[kickeltid][Admin] >= JatekosInfo[playerid][Admin])return SendClientMessage(playerid, -1, \"{ff0000}(( Angel Pine RPG: {ffffff}Veled egyforma vagy nálad nagyobb rangú játékost nem rúghatsz ki! {ff0000}))\");
SetTimer(\"kick\", 500, 0);
GetPlayerName(playerid, nev, sizeof(nev));
GetPlayerName(kickeltid, kickeltnev, sizeof(kickeltnev));
format(string, sizeof(string), \"{ff0000}(( Angel Pine RPG: %s ki lett rúgva %s által. | Indok: %s {ff0000}))\", kickeltnev, nev, ok);
SendClientMessageToAll(-1, string);
printf(\"%s ki lett rúgva %s által. | Indok: %s \", kickeltnev, nev, ok);
format(string, sizeof(string), \"{ff0000}(( Angel Pine RPG: {ffffff}Ki lettél rúgva {ff0000}%s {ffffff}által. | Indok: {ff0000}%s ))\", nev, ok);
SendClientMessage(playerid, -1, string);
return 1;
}
« Utoljára szerkesztve: 2016. Január 12. - 08:05:48 írta TengeriMalac »

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal