Szerző Téma: /rzene parancs hiba  (Megtekintve 672 alkalommal)

/rzene parancs hiba
« Dátum: 2014. január 05. - 10:51:20 »
0 Show voters
Sziasztok, lenne egy kis gondom a /rzene parancsal, akármilyen linket rakok be, csak egy részletét irja ki és a zenét nem játsza le...
 
   if(strcmp(cmd, \"/rzene\", true) == 0) // gNews[playerid] = 1; disabled
{
    if(IsPlayerConnected(playerid))
    {
   if(PlayerInfo[playerid][pMember] == 9 || PlayerInfo[playerid][pRank] > 5)
   {
      if(params < 1) return Msg(playerid,\"Használat: /rzene [link] (.mp3 legyen a vége a linknek!)\");
      foreach(Jatekosok,x)
      {
         if(gNews[playerid] == 0)
         {
            PlayAudioStreamForPlayer(x,param[1]);
         }
      }
   }
}
return 1;
}   

 
Mi lehet a hiba?

/rzene parancs hiba
« Válasz #1 Dátum: 2014. január 05. - 11:20:30 »
0 Show voters
Ìgy próbáld:
http://tarhelyed.hu/zene.mp3/
Ötlet:
Így töldsd fel:
1.mp3
2.mp3
Stb...
Egy pèlda(100%ban jó):
http://users.ininet.hu/aldotest/1.mp3/
Ha nem játszaná le,tekered fel a hangerõd(options)!Ha úgyse ìrj ès elküldöm az èn parancsom.

Nem elérhető Flash

  • 5726
  • (っ◕‿◕)っ
    • Profil megtekintése
/rzene parancs hiba
« Válasz #2 Dátum: 2014. január 06. - 15:41:43 »
0 Show voters
Megírtam ZCMD-re, ha valamit nem értesz írj!
 
CMD:rzene(playerid, params[]) {
if(sscanf(params, \"s[128]\", params)) return SendClientMessage(playerid, -1, \"/rzene [url]\");
if(strlen(params) > 128) return SendClientMessage(playerid, 0xff0000ff, \"Hiba! Az URL hosszúsága nem lehet több 128 karakternél!\");
if(strfind(params, \".mp3\") != 0) return SendClientMessage(playerid, 0xff0000ff, \"Hiba! Az URL végén szerepelnie kell .mp3 -nak.\");
   if(PlayerInfo[playerid][pMember] == 9 || PlayerInfo[playerid][pRank] > 5) {
foreach(Jatekosok, x) {
           if(!gNews[playerid]) PlayAudioStreamForPlayer(x, params[1]);
}
}
return 1;
}

Nem elérhető Pedró

  • 3341
  • 2014 © Az év Szkriptere
    • Profil megtekintése
/rzene parancs hiba
« Válasz #3 Dátum: 2014. január 07. - 18:00:54 »
0 Show voters
Idézetet írta: Flash date=1389019303\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"45686\" data-ipsquote-contentclass=\"forums_Topic
Megírtam ZCMD-re, ha valamit nem értesz írj!
 
CMD:rzene(playerid, params[]) {
if(sscanf(params, \"s[128]\", params)) return SendClientMessage(playerid, -1, \"/rzene [url]\");
if(strlen(params) > 128) return SendClientMessage(playerid, 0xff0000ff, \"Hiba! Az URL hosszúsága nem lehet több 128 karakternél!\");
if(strfind(params, \".mp3\") != 0) return SendClientMessage(playerid, 0xff0000ff, \"Hiba! Az URL végén szerepelnie kell .mp3 -nak.\");
    if(PlayerInfo[playerid][pMember] == 9 || PlayerInfo[playerid][pRank] > 5) {
foreach(Jatekosok, x) {
            if(!gNews[playerid]) PlayAudioStreamForPlayer(x, params[1]);
}
}
return 1;
}

 

Te meg mit csinálsz?
 
if(strfind(params, \".mp3\") != 0) return SendClientMessage(playerid, 0xff0000ff, \"Hiba! Az URL végén szerepelnie kell .mp3 -nak.\");

 
Ez azt jelenti, hogy ha nem .mp3-al kezdõdik a beírt tartalom, akkor kiírja a hibaüzenetet.. ._.
Helyes:
 
if(strfind(params, \".mp3\") != -1) return SendClientMessage(playerid, 0xff0000ff, \"Hiba! Az URL végén szerepelnie kell .mp3 -nak.\");

 


if(!gNews[playerid]) PlayAudioStreamForPlayer(x, params[1]);

 
Miért így oldottad meg? A beírt tartalomnak az elsõ karaktere elhanyagolódjon?
+
Miért playerid-nek ellenõrzöd le, hogy hamis-e a gNews változója?
Helyes:
 
if(!gNews
  • ) PlayAudioStreamForPlayer(x, params);

 


Legközelebb mielõtt kiraksz egy kódot, elõtte nézd már át.. Erre kell tanítani az újoncokat? A szétszórtságra?

Dupla hozzászólás automatikusan összefûzve. ( 2014. január 07. - 18:03:19 )

Egy kis bónusz, Flash:
 
 if(sscanf(params, \"s[128]\", params)) return SendClientMessage(playerid, -1, \"/rzene [url]\");
if(strlen(params) > 128) return SendClientMessage(playerid, 0xff0000ff, \"Hiba! Az URL hosszúsága nem lehet több 128 karakternél!\");

 
Sscanf-nál beállítod, hogy a string hosszúsága 128 legyen, aztán le ellenõrzöd, hogy nem-e hosszabb 128-nál.
Hogy lehet egy kódba ennyi figyelmetlenséget hagynia egy olyan embernek, aki a jövõ szerverét készíti?
« Utoljára szerkesztve: 2014. január 07. - 18:05:04 írta Pedró »

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal