GTA Közösség - A magyar GTA fórum

San Andreas Multiplayer (SA-MP) => Szkript kérések => SA-MP: Szerverfejlesztés => RP/RPG kérések => A témát indította: quer - 2012. július 02. - 14:19:50

Cím: /sokkol
Írta: quer - 2012. július 02. - 14:19:50
helló!
Tudna valaki nekem készíteni egy sokkol parancsot?
Naggyábol már megvagyok vele csak azt nem tudom hogy azt hogy kell hogy a legközelebbi embert sokkolja
 
CMD:sokkol(playerid, params[])
{
    if(pInfo[playerid][Frakcio] == BORTONOR)
    {
if(Sokkoloeloveve[playerid] == 1)
{
   new kozeliplayer = ide kellene valami szerintem
    new s[128];
   TogglePlayerControllable(kozeliplayer, false);
   SetTimerEx(\"olvasztas\", 5000, 0, \"%i\", kozeliplayer );
   format(s, 200, \"* %s lesokkolja %s -t\", Nev(playerid),Nev(kozeliplayer));
       ProxDetector( 15.0, playerid, s, LILA, LILA, LILA, LILA, LILA);
}else SendClientMessage(playerid, NARANCS, \"Nincs nálad sokkoló!\");
}else SendClientMessage(playerid, NARANCS, \"Nem vagy Börtönõr!\");
return 1;
}
Cím: /sokkol
Írta: Bazsi - 2012. július 04. - 20:12:32
Ezt rakd be a módba, és akkor oda, ahova írtad, hogy \"ide kellene valami szerintem\", oda ezt írod, elvileg mûködik :)
 
stock GetClosestPlayerToPlayer(playerid)
{
    new Float:dist = 1000.0;
    new targetid = INVALID_PLAYER_ID;
    new Float:x1,Float:y1,Float:z1;
    new Float:x2,Float:y2,Float:z2;
    new Float:tmpdis;
    GetPlayerPos(playerid,x1,y1,z1);
    for(new i=0;i<MAX_PLAYERS;i++)
    {
        if(i == playerid) continue;
        GetPlayerPos(i,x2,y2,z2);
        tmpdis = floatsqroot(floatpower(floatabs(floatsub(x2,x1)),2)+floatpower(floatabs(floatsub(y2,y1)),2)+floatpower(floatabs(floatsub(z2,z1)),2));
        if(tmpdis < dist)
        {
            dist = tmpdis;
            targetid = i;
        }
    }
    return targetid;
}

 
Innét szedtem, csak átírtam stock-ra: http://forum.sa-mp.com/showthread.php?t=234561