Szerző Téma: Válasz rendszer  (Megtekintve 831 alkalommal)

Válasz rendszer
« Dátum: 2012. Június 07. - 08:50:07 »
0 Show voters
Sziasztok!
Kéne nekem egy /válasz rendszer amivel tudok a playereknek válaszolni.
Úgy kéne hogy amit válaszol az adott playernek azt az adminok lássák.
A player nevét is és az admin nevét is.  :hmmm:

Válasz rendszer
« Válasz #1 Dátum: 2012. Június 07. - 16:11:12 »
0 Show voters
Nem nehéz. Ha komplett script kell megfelelõ témában kérd. Nos elõször is csinálunk egy változót pl: PlayerText[MAX_PLAYERS][64];
És mondjuk ha azt akarod hogy /report-al kédrezzen, akkor a reportba a params[] változót eltárolod a PlayerText változóba.
És mondjuk egy /válasz [id] [szöveg] paranccsal lehet válaszolni.
SendClientMessageToAll(szín,PlayerText[playerid]);
SendClientMessageToAll(szín,szöveg);
valami ilyesmi lenne.

Válasz rendszer
« Válasz #2 Dátum: 2012. Június 07. - 17:52:25 »
0 Show voters
Tessék:
 
   if(egyezik(cmd, \"/válasz\") || egyezik(cmd, \"/valasz\") || egyezik(cmd, \"/vsz\") || egyezik(cmd, \"/vá\"))
{
if(!Admin(playerid, 1) && !IsAS(playerid)) return Msg(playerid,\"Nem vagy AS!\");
if(params < 2) return Msg(playerid, \"/válasz [játékos] [üzenet]\");
new player = ReturnUser(strtok(cmdtext, idx));
if(player == INVALID_PLAYER_ID) return Msg(playerid, \"Nincs ilyen játékos!\");
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= \' \')) { idx++; }
new offset = idx;
new result[96];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
   return Msg(playerid, \"/válasz [játékos] [üzenet]\");
        SzovegEllenorzes(playerid, result, \"/vá\");
if(PlayerInfo[playerid][pAdmin] == 9999)
   SendFormatMessage(player, COLOR_LIGHTGREEN, \"VezérScripter %s: %s\", AdminName(playerid) ,(result));
else if(PlayerInfo[playerid][pAdmin] == 5555)
   SendFormatMessage(player, COLOR_LIGHTGREEN, \"FõScripter %s: %s\", AdminName(playerid) ,(result));
else if(PlayerInfo[playerid][pAdmin] == 2014)
   SendFormatMessage(player, COLOR_LIGHTGREEN, \"Rendszergazda %s: %s\", AdminName(playerid) ,(result));
else if(PlayerInfo[playerid][pAdmin] == 2013)
   SendFormatMessage(player, COLOR_LIGHTGREEN, \"Tulajdonos %s: %s\", AdminName(playerid) ,(result));
else if(PlayerInfo[playerid][pAdmin] == 1338)
   SendFormatMessage(player, COLOR_LIGHTGREEN, \"Super Admin %s: %s\", AdminName(playerid) ,(result));
else if(PlayerInfo[playerid][pAdmin] == 1337)
   SendFormatMessage(player, COLOR_LIGHTGREEN, \"FõAdmin %s: %s\", AdminName(playerid) ,(result));
else if(PlayerInfo[playerid][pAdmin] < 1337 && PlayerInfo[playerid][pAdmin] != 0)
   SendFormatMessage(player, COLOR_LIGHTGREEN, \"Admin %s: %s\", AdminName(playerid), (result));
else if(PlayerInfo[playerid][pAdmin] == 0)
   SendFormatMessage(player, COLOR_LIGHTGREEN, \"AdminSegéd %s: %s\", AdminName(playerid), (result));
else
   SendFormatMessage(player, COLOR_LIGHTGREEN, \"Admin %s: %s\", AdminName(playerid), (result));
Format(tmp, \" %s válaszolt neki: %s | Üzenet: %s\", AdminName(playerid), PlayerName(player), (result));
ABroadCast(COLOR_YELLOW, tmp, 2);
if(Admin(playerid,1))
   PlayerInfo[playerid][pVA] ++;
return 1;
}

 
Ha segített nincs mit
Üdv: Dexter :smokin:

Nem elérhető Erik3333

  • 945
  • SMF | phpBB | TS3 | PHP | HTML | CSS | JS | PAWN | JAVA
    • Profil megtekintése
Válasz rendszer
« Válasz #3 Dátum: 2012. Június 07. - 17:53:25 »
0 Show voters
Az meg még jobb lenne, ha nem a See módból lenne kiszedve (szerintem)...

Nem elérhető Gabor..

  • 1883
  • Gabor..
    • Profil megtekintése
Válasz rendszer
« Válasz #4 Dátum: 2012. Június 07. - 18:13:44 »
0 Show voters

#include     <       a_samp       >
#include     <       zcmd         >
#include     <       sscanf2      >
#include     <       foreach      >
 
new
   g_szFormat[ 160 ];
 
CMD:valasz( playerid, params[ ] )
{
if( IsPlayerAdmin( playerid ) )
{
   new
      iPlayer,
      szReply[ 70 ];
   if( sscanf( params, \"us[70]\", iPlayer, szReply ) ) return SendClientMessage( playerid, 0xFF0000AA, \"Használat: /valasz <Játékos ID> <Szöveg>\" );
   if( playerid == iPlayer ) return SendClientMessage( playerid, 0xFF0000AA, \"HIBA: Magadnak minek akarsz választ küldeni? :O\" );
   if( iPlayer == INVALID_PLAYER_ID ) return SendClientMessage( playerid, 0xFF0000AA, \"HIBA: Nem létezõ azonosító...\" );
   
   format( g_szFormat, sizeof( g_szFormat ), \"*** %s(%d) Admin válasza: %s\", pName( playerid ), playerid, szReply );
   SendClientMessage( iPlayer, 0xFF0000AA, g_szFormat );
   
   foreach(Player, i)
   {
        if( IsPlayerAdmin( i ) )
   {
                                format( g_szFormat, sizeof( g_szFormat ), \"*** %s(%d) Válasza %s(%d) nevû játékosnak: %s\", pName( i ), i, pName( iPlayer ), iPlayer, szReply );
         SendClientMessage( i, 0xFF0000AA, g_szFormat );
   }
   }
}
else SendClientMessage( playerid, 0xFF0000AA, \"HIBA: Nem vagy Rcon admin!\" );
return 1;
}
 

stock  pName( playerid )
{
   static
        s_szName[ MAX_PLAYER_NAME ];
       
   GetPlayerName( playerid, s_szName, MAX_PLAYER_NAME );
   return s_szName;
}
« Utoljára szerkesztve: 2012. Június 07. - 18:15:10 írta Gabor.. »

Válasz rendszer
« Válasz #5 Dátum: 2012. Június 07. - 18:42:31 »
0 Show voters
Gabor nem jó.
Beirom és UNKNOW
És csak RCON -al megy?

Nem elérhető Gabor..

  • 1883
  • Gabor..
    • Profil megtekintése
Válasz rendszer
« Válasz #6 Dátum: 2012. Június 07. - 18:45:13 »
0 Show voters
Igen, azért Unknow, mert bekell jelentkezni az RCON Adminisztrációs felületbe. Másképp nem tudtam megírni adminosra, mivel számomra ismeretlen a te adminrendszered. De amit írtam, az elvileg jó.
« Utoljára szerkesztve: 2012. Június 07. - 18:45:37 írta Gabor.. »

Válasz rendszer
« Válasz #7 Dátum: 2012. Június 07. - 19:31:03 »
0 Show voters
Beléptem RCON-ba de akkor se jó :S

Nem elérhető Gabor..

  • 1883
  • Gabor..
    • Profil megtekintése
Válasz rendszer
« Válasz #8 Dátum: 2012. Június 07. - 21:16:42 »
+1 Show voters
Így jónak kell lennie, ha nemjó, akkor nálad a baj.
 

#include     <       a_samp       >
#include     <       zcmd         >
#include     <       sscanf2      >
#include     <       foreach      >
 
new
   g_szFormat[ 160 ];
 
CMD:valasz(playerid, params[])
{
if( IsPlayerAdmin( playerid ) )
{
   new
      iPlayer,
      szReply[ 70 ];
   if( sscanf( params, \"us[70]\", iPlayer, szReply ) ) return SendClientMessage( playerid, 0xFF0000AA, \"Használat: /valasz <Játékos ID> <Szöveg>\" );
   if( playerid == iPlayer ) return SendClientMessage( playerid, 0xFF0000AA, \"HIBA: Magadnak minek akarsz választ küldeni? :O\" );
   if( iPlayer == INVALID_PLAYER_ID ) return SendClientMessage( playerid, 0xFF0000AA, \"HIBA: Nem létezõ azonosító...\" );
   
   format( g_szFormat, sizeof( g_szFormat ), \"*** %s(%d) Admin válasza: %s\", pName( playerid ), playerid, szReply );
   SendClientMessage( iPlayer, 0xFF0000AA, g_szFormat );
   
   foreach(Player, i)
   {
        if( IsPlayerAdmin( i ) )
   {
                                format( g_szFormat, sizeof( g_szFormat ), \"*** %s(%d) Válasza %s(%d) nevû játékosnak: %s\", pName( i ), i, pName( iPlayer ), iPlayer, szReply );
         SendClientMessage( i, 0xFF0000AA, g_szFormat );
   }
   }
}
else SendClientMessage( playerid, 0xFF0000AA, \"HIBA: Nem vagy Rcon admin!\" );
return 1;
}
 

stock  pName( playerid )
{
   static
                       s_szName[ MAX_PLAYER_NAME ];
       
   GetPlayerName( playerid, s_szName, MAX_PLAYER_NAME );
   return s_szName;
}

Esetleg azt próbáld még meg, ha nem, jó, hogy nem FS-ként rakod be, hanem a módodba. Mert lehet összeütközik a kettõ.
« Utoljára szerkesztve: 2012. Június 07. - 21:23:11 írta Gabor.. »

Nem elérhető JBauer

  • 1407
    • Profil megtekintése
Válasz rendszer
« Válasz #9 Dátum: 2012. Június 07. - 21:36:34 »
0 Show voters
ha strcmp-s a modja akkor unknow lesz, mivel keveredik a zcmd és az strcmp

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal