Szerző Téma: Néhány alap command...  (Megtekintve 1208 alkalommal)

Ned001

  • Vendég
Néhány alap command...
« Dátum: 2010. január 24. - 13:36:00 »
0 Show voters
Sziasztok, pár kérésem lenne. Eloször is:
 
if(strcmp(cmd, \"/fegyverkuldes\", true) == 0) {
    new tmp[256];
   tmp = strtok(cmdtext, idx);
   if(!strlen(tmp)) {
      SendClientMessage(playerid, COLOR_WHITE, \"HASZNÁLAT: /fegyverkuldes [játékos ID]\");
      return 1;
   }
   giveplayerid = strval(tmp);
   new pweapon, pammo;
  if (IsPlayerConnected(giveplayerid)) {
      GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
      GetPlayerName(playerid, sendername, sizeof(sendername));
      pammo = GetPlayerAmmo(playerid);
      pweapon = GetPlayerWeapon(playerid);
      GetPlayerAmmo(playerid);
      GivePlayerWeapon(playerid,pweapon,(0 - (pammo)));
      GivePlayerWeapon(giveplayerid,pweapon,pammo);
      format(string, sizeof(string), \"%s(id: %d) küldött neked fegyvert.\", sendername, playerid);
      SendClientMessage(giveplayerid, COLOR_YELLOW, string);
      }else{
      format(string, sizeof(string), \"%d nem aktív játékos.\", giveplayerid);
      SendClientMessage(playerid, COLOR_YELLOW, string);
      }
   return 1;
}
[/quote]
Ezt át tudná nekem valaki alakitani ugy, hogy csak közelrol lehessen használni? RP modba.
Másodszor, szükségem volna egy egyszeru parancsra. Egy /va parancsra,  hogy mibol is álljon: Szintén RP modhoz, csak közelrol látszódjon (mint valóéletbe) és a /va olyan legyen mint a /me (xy csinál valamit) csak ne irja ki a nevet, PL:  *Valaki kenyeret eszik.  Használata: /va (cselekvés).
És van egy bonyolultabb kérdésem is.... Egy olyasmi kód kellene, hogyha jármuvel karambolozunk, menjen le az életünkbol. Ha meglövik a kocsit szintén.
És egy navigációs script, ugy hogy beirok egy parancsot, pl: /városháza akkor kirak a térképre egy checkpointot és ha odaérek eltunik.
Ennyi volna a kérésem, pls csak kész válaszokat küldjetek, még kezdo vagyok :S Természetesen nem várok egy embertol mindenre választ, de ha egy-egy kérdést megtudnál válaszolni nagyon megköszönném.
Nagyon szépen köszönöm: Ned
« Utoljára szerkesztve: 2010. január 24. - 13:38:46 írta Ned001 »

Néhány alap command...
« Válasz #1 Dátum: 2010. január 24. - 14:14:50 »
0 Show voters
Tessék, de nem én irtam.
 

if(strcmp(cmd, \"/give\", true) == 0)
{
    if(IsPlayerConnected(playerid))
    {
   new x_nr[256];
   x_nr = strtok(cmdtext, idx);
   if(!strlen(x_nr))
   {
       SendClientMessage(playerid, COLOR_WHITE, \"USAGE: /give [name] [playerid/PartOfName] (loszer])\");
      return 1;
   }
   else if(strcmp(x_nr,\"gun\",true) == 0)
   {
       tmp = strtok(cmdtext, idx);
       if(!strlen(tmp))
      {
         SendClientMessage(playerid, COLOR_GRAD1, \"USAGE: /give gun [playerid/PartOfName]\");
         return 1;
      }
      giveplayerid = ReturnUser(tmp);
      if(IsPlayerConnected(giveplayerid))
      {
          if(giveplayerid != INVALID_PLAYER_ID)
          {
            if(ProxDetectorS(5.0, playerid, giveplayerid))
            {
                new gunID = GetPlayerWeapon(playerid);
                        new gunAmmo = GetPlayerAmmo(playerid);
                GetPlayerName(playerid, sendername, sizeof(sendername));
                GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
                if(gunID != 0 && gunAmmo != 0)
                {
                    GivePlayerWeapon(giveplayerid, gunID, gunAmmo);
                    RemovePlayerWeapon(playerid, gunID);
                    format(string, sizeof(string), \"* %s oda ad egy fegyvert %s-nek.\", sendername, giveplayer);
                    ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
                     return 1;
                }
                else
                {
                    SendClientMessage(playerid, COLOR_GREY, \"Neked nincs meg ez a fegyver!\");
                    return 1;
                }
            }
            else
            {
                SendClientMessage(playerid, COLOR_GREY, \"Játékos nincs a közeledbe!\");
                return 1;
            }
          }
      }
   }
   else
   {
       SendClientMessage(playerid, COLOR_WHITE, \"USAGE: /give [name] [playerid/PartOfName] ([ammount])\");
      return 1;
   }
    }
    return 1;
}

Nem elérhető Csabesz

  • 7827
    • Profil megtekintése
Néhány alap command...
« Válasz #2 Dátum: 2010. január 24. - 14:57:07 »
0 Show voters
Va parancs:
\"M34v.jpg\"
U.I.: GF /me parancsa lett átalakítva... ::)
Filterscript formába is használható.
Tesztelve lett.
Csabesz
« Utoljára szerkesztve: 2010. január 24. - 15:01:21 írta Csabesz »

Ned001

  • Vendég
Néhány alap command...
« Válasz #3 Dátum: 2010. január 24. - 15:08:21 »
0 Show voters
kössz mindkettotöknek :D
Már csak a navigációs és a karambolos script kell ha elkésziti valaki ;D

Nem elérhető SnicK

  • 7521
    • Profil megtekintése
Néhány alap command...
« Válasz #4 Dátum: 2010. január 24. - 15:21:13 »
0 Show voters
Az ütközéses:
 

#include <a_samp>
#define RED 0xAA3333AA
new bool:IsSpeeding[MAX_PLAYERS],
     playerspeedtimer[MAX_PLAYERS],
     CrashTimer[MAX_PLAYERS],
     Float:pSpeed[MAX_PLAYERS];
public OnFilterScriptInit()
{
        for(new i=0; i<GetMaxPlayers(); i++)
        {
            IsSpeeding = false;
        }
        return 1;
}
public OnPlayerConnect(playerid)
{
        playerspeedtimer[playerid] = SetTimerEx(\"VehicleSpeed\", 100, 1, \"i\", playerid);
        return 1;
}
public OnPlayerDisconnect(playerid)
{
        KillTimer(playerspeedtimer[playerid]);
    KillTimer(CrashTimer[playerid]);
    IsSpeeding[playerid] = false;
        return 1;
}
forward VehicleSpeed(playerid);
public VehicleSpeed(playerid)
{
        new Float:ovx, Float:ovy, Float:ovz;
        if(IsPlayerInAnyVehicle(playerid))
        {
                GetVehicleVelocity(GetPlayerVehicleID(playerid), ovx, ovy, ovz);
                if(ovx < -0.4 || ovx > 0.4 || ovy < -0.4 || ovy > 0.4 && !IsSpeeding[playerid])
                {
                    CrashTimer[playerid] = SetTimerEx(\"Speeding\", 100, 1, \"i\", playerid);
                    ovx = (ovx >= 0) ? ovx : -ovx;
                    ovy = (ovy >= 0) ? ovy : -ovy;
                    pSpeed[playerid] = ((ovx+ovy)/2);
                    IsSpeeding[playerid] = true;
                }
                else
                {
                    KillTimer(CrashTimer[playerid]);
                    pSpeed[playerid] = 0.0;
                    IsSpeeding[playerid] = false;
                }
        }
        return 1;
}
forward Speeding(playerid);
public Speeding(playerid)
{
        new Float:nvx, Float:nvy, Float:nvz;
        if(IsPlayerInAnyVehicle(playerid) && IsSpeeding[playerid])
        {
                GetVehicleVelocity(GetPlayerVehicleID(playerid), nvx, nvy, nvz);
                if(nvx > -0.1 && nvx < 0.1 && nvy > -0.1 && nvy < 0.1)
                {
                    new Float:crashhealth;
                    GetPlayerHealth(playerid, crashhealth);
                    crashhealth -= (pSpeed[playerid] * 100.0);
                    SetPlayerHealth(playerid, crashhealth);
                SetPlayerDrunkLevel(playerid, 50000);
                SetTimerEx(\"StopCameraEffect\", 5000, 0, \"i\", playerid);
                    IsSpeeding[playerid] = false;
                }
        }
        return 1;
}
forward StopCameraEffect(playerid);
public StopCameraEffect(playerid)
{
        SetPlayerDrunkLevel(playerid, 0);
        return 1;
}

 
A szkriptet Mikee írta a pawno-sa-mp.extra.hu oldalon.

Ned001

  • Vendég
Néhány alap command...
« Válasz #5 Dátum: 2010. január 24. - 17:53:08 »
0 Show voters
a fegyveradást, a fentit átalakitaná valaki ahogy leirtam?  :-\\ Mert a másik nemjó sajnos :(

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal