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

San Andreas Multiplayer (SA-MP) => SA-MP: Szerverfejlesztés => A témát indította: Gabor.. - 2012. Március 29. - 16:37:54

Cím: Drog Rendszer
Írta: Gabor.. - 2012. Március 29. - 16:37:54
Sziasztok!
Megírtam a drog rendszert, amit a \"Készülõ munkák\" alfórumban kiírtam. :D  Tudom, hogy ezt a scriptet máshogy is meglehetett volna oldani, de én most ezt választottam. :D
Kód: http://pastebin.com/NJ8fGaLw
Tulajdonságok:
- /drog paranccsal elteleportál a farmra, és ott 2 DB checkpoint van.
- Felkell szedni a vadkendert miközben a CP-ben állsz.
- Ha felszedted, akkor elkell menned a szembe lévõ CP-hez, ahol elkészíted a drogot.
- Ha kész, akkor eladhatod, esteleg beadhatod magadnak. :D
- Timerek segítségével szabályozható, hogy mekkora idõközönként csinálhat drogot a játékos.
Köszönöm, hogy megnézted a scriptet!  Remélem, hogy valakinek tetszik, és hasznát veszi. :)
 
#include <a_samp>
#include <zcmd>
#include <sscanf2>
#include <streamer>
 
#define COLOR_PINK 0xFF66FFAA
#define COLOR_RED 0xFF0000AA
#define COLOR_LIGHTBLUE 0x33CCFFAA
#define COLOR_LIME 0x99FF00AA
#define COLOR_YELLOW 0xFF9900AA
#define COLOR_WHITE 0xFFFFFFAA
#define COLOR_ORANGE 0xF97804FF
#define COLOR_BLUE 0x33CCFFAA
//Drog azonosítók
#define DROG_NINCS  0
#define DROG_VAN    1
#define DROGY       2
#define DROGN       3
 

// Checkpoint
new DROGCP, DROGFEL;
// Drog
public OnFilterScriptInit()//Mód esetén \'public OnGameModeInit()\'
{
print(\"Drog System betöltve By.: Gabor...\");
DROGCP = CreateDynamicCP(-1104.8046,-1617.5413,76.3672, 2, -1, -1, -1, 200);
DROGFEL = CreateDynamicCP(-1074.3137,-1625.3157,76.3672, 2, -1, -1, -1, 200);
   //Drog map(Vadkender)
CreateDynamicObject(669, -1073.5, -1636.4000244141, 61.700000762939, 0, 0, 0);
CreateDynamicObject(669, -1073.5, -1633.0999755859, 62.400001525879, 0, 0, 90);
CreateDynamicObject(669, -1074.4000244141, -1628.3000488281, 61.900001525879, 0, 0, 90);
CreateDynamicObject(669, -1075.1999511719, -1630.5999755859, 62.700000762939, 0, 0, 174);
CreateDynamicObject(669, -1075.0999755859, -1626.4000244141, 62.700000762939, 0, 0, 169.99597167969);
CreateDynamicObject(669, -1073.8000488281, -1624.3000488281, 62.700000762939, 0, 0, 331.99145507813);
CreateDynamicObject(669, -1073.9000244141, -1620.3000488281, 62.700000762939, 0, 0, 17.990356445313);
CreateDynamicObject(669, -1072.6999511719, -1618.1999511719, 62.700000762939, 0, 0, 343.99011230469);
CreateDynamicObject(669, -1074.9000244141, -1614.4000244141, 62.400001525879, 0, 0, 59.987426757813);
CreateDynamicObject(11090, -1104.4000244141, -1615.8000488281, 75.099998474121, 0, 0, 270);
return 1;
}
public OnGameModeExit()
{
   print(\"Drog System kikapcsolva By.: Gabor...\");
   return 1;
}
 
public OnPlayerConnect(playerid)
{
     SetPVarInt(playerid, \"Drog\", DROG_NINCS);
     SetPVarInt(playerid, \"Felszed\", DROGN);
     return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
     SetPVarInt(playerid, \"Drog\", DROG_NINCS);
     SetPVarInt(playerid, \"Felszed\", DROGN);
     return 1;
}
CMD:drog(playerid, params[])
{
    if(IsPlayerInAnyVehicle(playerid))
    {
      new tmpcar = GetPlayerVehicleID(playerid);
      SetVehiclePos(tmpcar, -1085.9890,-1630.2303,76.3672);
      LinkVehicleToInterior(tmpcar, 0);
      SetPlayerVirtualWorld(playerid, 0);
    }
    else SetPlayerPos(playerid, -1085.9890,-1630.2303,76.3672);
    return 1;
}
CMD:vkfelszed(playerid, params[])
{
   if(GetPVarInt(playerid, \"Drog\") == DROG_NINCS)
   {
       if(IsPlayerInDynamicCP(playerid, DROGFEL))
       {
           SetPVarInt(playerid, \"Felszed\", DROGY);
           SendClientMessage(playerid, COLOR_LIME, \"Felszedted a vadkendert! Menj a szemben lévõ Checkpointhoz!\");
       }
       else SendClientMessage(playerid, COLOR_RED, \"Nem vagy a felszedõ checkpointban!\");
   }
   else SendClientMessage(playerid, COLOR_RED, \"Van már drogod!\");
   return 1;
}
 
CMD:drogcsinal(playerid, params[])
{
      if(GetPVarInt(playerid, \"Drog\") == DROG_NINCS)
      {
          if(GetPVarInt(playerid, \"Felszed\") == DROGY)
          {
            if(!IsPlayerInDynamicCP(playerid, DROGCP)) return SendClientMessage(playerid, COLOR_RED, \"Nem vagy a checkpointba!\");
            SetPVarInt(playerid, \"Drog\", DROG_VAN);
            TogglePlayerControllable(playerid, 0);
            SetTimerEx(\"drogcsin\",4000,0,\"i\",playerid);
            SetTimerEx(\"drogido\",300000,0,\"i\",playerid);
            SendClientMessage(playerid, COLOR_LIGHTBLUE, \"Drogot készítesz.....\");
          }
          else SendClientMessage(playerid, COLOR_RED, \"Nem szedtél fel vadkendert!\");
      }
      else SendClientMessage(playerid, COLOR_RED, \"Ne legyél drogfüggõ, majd 5 perc múlva újra csinálhatsz!\");
      return 1;
}
 
CMD:drogbead(playerid, params[])
{
if(GetPVarInt(playerid, \"Drog\") ==  DROG_VAN)
{
    SetPlayerDrunkLevel(playerid, 50000);
    SetPVarInt(playerid, \"Drog\", DROG_NINCS);
            SetTimerEx(\"bead\",60000,0,\"i\",playerid);
    SendClientMessage(playerid, COLOR_LIME, \"Tyhûûûû... Most aztán jól beszívtál.\");
}
        else SendClientMessage(playerid, COLOR_RED, \"Nincs Drogod!\");
        return 1;
}
 
CMD:drogelad(playerid, params[])
{
    if(GetPVarInt(playerid, \"Drog\") ==  DROG_VAN)
    {
 
  new
   string[128],
   name[MAX_PLAYER_NAME],
                   name2[MAX_PLAYER_NAME],
   PID;
          if(sscanf(params, \"u\", PID)) return SendClientMessage(playerid, COLOR_RED, \"Használat: /drogelad <ID/Játékos név>\");
  if(PID == INVALID_PLAYER_ID) return SendClientMessage(playerid, COLOR_RED, \"Rossz ID/Név!\");
          GetPlayerName(playerid, name, MAX_PLAYER_NAME);
          GetPlayerName(PID, name2, MAX_PLAYER_NAME);
          format(string, sizeof(string), \"%s Elakar adni neked drogot $50000-ért, ha megakarod venni, akkor /megvesz <ID>\", name);
          SendClientMessage(PID, COLOR_ORANGE, string);
          format(string, sizeof(string), \"Elakarsz adni %s-nak/nek drogot!\", name2);
          SendClientMessage(playerid, COLOR_ORANGE, string);
    }
    else SendClientMessage(playerid, COLOR_RED, \"Nincsen drogod!\");
    return 1;
}
   
CMD:drogmegvesz(playerid, params[])
{
    if(GetPVarInt(playerid, \"Drog\") ==  DROG_NINCS)
    {
  new
   string[128],
   name[MAX_PLAYER_NAME],
   name2[MAX_PLAYER_NAME],
   PID;
  if(sscanf(params, \"u\", PID)) return SendClientMessage(playerid, COLOR_RED, \"Használat: /drogmegvesz <ID/Játékos név>\");
  if(PID == INVALID_PLAYER_ID) return SendClientMessage(playerid, COLOR_RED, \"Rossz ID/Név!\");
  if(GetPVarInt(PID, \"Drog\") == DROG_NINCS) return SendClientMessage(playerid, COLOR_RED, \"Nincs drog az illetõnél!\");
  SetPVarInt(playerid, \"Drog\", DROG_VAN);
  SetPVarInt(PID, \"Drog\", DROG_NINCS);
 
  GivePlayerMoney(playerid, -50000);
  GivePlayerMoney(PID, 50000);
 
          GetPlayerName(playerid,name, MAX_PLAYER_NAME);
          format(string, sizeof(string), \"%s Megvette tõled a drogot!\", name);
          SendClientMessage(PID, COLOR_ORANGE, string);
          GetPlayerName(PID, name2, MAX_PLAYER_NAME);
          format(string, sizeof(string), \"%s-tõl/tól Megvetted a drogot!\", name2);
          SendClientMessage(playerid, COLOR_ORANGE, string);
    }
    else SendClientMessage(playerid, COLOR_RED, \"Van már drogot!\");
    return 1;
}
 
public OnPlayerEnterDynamicCP(playerid, checkpointid)
{
    if(checkpointid == DROGCP) return SendClientMessage(playerid, COLOR_WHITE, \"Ha Drogot szeretnél csinálni, akkor /drogcsinal!\");
    if(checkpointid == DROGFEL) return SendClientMessage(playerid, COLOR_WHITE, \"Ha felszeretnéd szedni a vadkendert, akkor /vkfelszed \");
    return 1;
}
 
// Drog timerekhez kapcsolódó eljárások
forward bead(playerid);
public bead(playerid)
{
SetPlayerDrunkLevel(playerid, 0);
SendClientMessage(playerid, COLOR_LIME, \"Már nem vagy beszívva, aztán óvatosan a füvezéssel!\");
        return 1;
}
forward drogido(playerid);
public drogido(playerid)
{
SetPVarInt(playerid, \"Drog\", DROG_NINCS);
SendClientMessage(playerid, COLOR_BLUE, \"Ember, mostmár újra csinálhatsz drogot.\");
        return 1;
}
forward drogcsin(playerid);
public drogcsin(playerid)
{
    SetPVarInt(playerid, \"Drog\", DROG_VAN);
    TogglePlayerControllable(playerid, 1);
    SendClientMessage(playerid, COLOR_PINK, \"Csináltál Drogot! Ha eladni akarod, akkor /drogelad, ha elszívni, akkor /drogelbead!\");
    return 1;
}
Cím: Drog Rendszer
Írta: dexi - 2012. Március 29. - 17:03:36
Hát, hát. Egész jó lenne HA:
Nem lennének benne ilyen szövegek:
 
\"Vaze, ne legyél drogfüggõ! Majd 5 perc múlva újra csinálhatsz!\"[/quote]
Kicsit kidolgozottabb lenne.
Cím: Drog Rendszer
Írta: Gabor.. - 2012. Március 29. - 17:18:53
Köszi, átírva. :)
E.: Objectek hozzáadva.
Cím: Drog Rendszer
Írta: leito222 - 2012. Március 29. - 18:09:25
Nekem tetszik, jó!
Cím: Drog Rendszer
Írta: Gabor.. - 2012. Március 29. - 18:20:12
Köszönöm! :)
Cím: Drog Rendszer
Írta: SmokeR - 2012. Március 29. - 18:22:28
Geci nagy ! LIKE :D
Cím: Drog Rendszer
Írta: Gabor.. - 2012. Március 29. - 18:50:10
Köszi! :D
Cím: Drog Rendszer
Írta: csont - 2012. Március 29. - 20:12:48
Tetszetõs :D  ;)
Cím: Drog Rendszer
Írta: Dead - 2012. Március 29. - 20:22:21
Használom Like
Cím: Drog Rendszer
Írta: Gabor.. - 2012. Március 29. - 20:26:51
Idézetet írta: csont date=1333044768\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"19266\" data-ipsquote-contentclass=\"forums_Topic
Tetszetõs :D  ;)
 
Köszi! :)

Használom Like
 
[/quote]Köszi! :D
Cím: Drog Rendszer
Írta: FastFurious - 2012. Március 30. - 13:49:51
jo lett a script
Cím: Drog Rendszer
Írta: Gabor.. - 2012. Március 31. - 06:56:41
Köszi! :)
Cím: Drog Rendszer
Írta: Corrupt - 2012. Április 06. - 18:39:37
szép script, használom, ment a +  ;D
Cím: Drog Rendszer
Írta: Gabor.. - 2012. Április 06. - 19:23:32
Köszönöm. :) Egészségetekre. :D
Cím: Drog Rendszer
Írta: zeteni - 2012. Április 11. - 20:10:36
Fincsi lett :D :hihi:
Cím: Drog Rendszer
Írta: Gabor.. - 2012. Április 12. - 17:17:26
Köszi. :D
Cím: Drog Rendszer
Írta: Gabor.. - 2012. Április 24. - 20:53:39
Frissítve!
Fixelve lett a kód egy parányit. A /drogelad, és a /drogmegvesz szövege javítva, és szépítettem rajta egy kicsit. :D
Cím: Drog Rendszer
Írta: omgg - 2012. Április 25. - 14:24:59
erre 1 +-t kell adnom :D
Cím: Drog Rendszer
Írta: Pedró - 2012. Április 25. - 14:36:03
már nemazért , minden egyes hsz-t meg kell köszönnöd Gabor?..
amúgy meg pazarolsz.
Cím: Drog Rendszer
Írta: Gabor.. - 2012. Április 25. - 15:24:27
Idézetet írta: omgg date=1335356699\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"19266\" data-ipsquote-contentclass=\"forums_Topic
erre 1 +-t kell adnom :D
 
Köszi. :)
Az meglehet, de nem sok helyen, és nem vészes. Mûködik, az a lényeg. :D Am meg illik megköszönni....
Cím: Drog Rendszer
Írta: Rexii - 2012. Április 25. - 15:51:01
Idézetet írta: Pedro date=1335357363\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"19266\" data-ipsquote-contentclass=\"forums_Topic
minden egyes hsz-t meg kell köszönnöd Gabor?..
 
Fáj neked? Nem kell belõle problémázni,illik megköszönni!
 

amúgy meg pazarolsz.
 
[/quote]
Nem akkora probléma,hogy ezt le kell írnod!
Cím: Drog Rendszer
Írta: Pedró - 2012. Április 25. - 16:46:57
Idézetet írta: Rexii date=1335361861\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"19266\" data-ipsquote-contentclass=\"forums_Topic


minden egyes hsz-t meg kell köszönnöd Gabor?..
 
Fáj neked? Nem kell belõle problémázni,illik megköszönni!
 

amúgy meg pazarolsz.
 
[/quote]
Nem akkora probléma,hogy ezt le kell írnod!
 
[/quote]
miért? meg van szabva hogy mit írhatok?asd
amúgy, ja eléggé zavar hogy nem tudom átlátni a hozzászólásokat mert minden második az, hogy: köszi :) / :D
...
mellesleg nem tudom mit kötsz belém.asd
: >
Cím: Drog Rendszer
Írta: Gabor.. - 2012. Április 26. - 15:00:48
Jólvan, nem kell ebbõl veszekedést csinálni...  Azért van itt a script, hogy akinek tetszik használja, akinek meg nem tetszik, az meg nem használja, ennyi.
Cím: Drog Rendszer
Írta: xSkillZ7x - 2012. Május 10. - 18:26:49
En is ilyet akartam csinalni.Am jo.Nem pribaltam ,de tetszik.Am ha akarodv akkor szerintw m bo aztvitsd valami jo hatassal,azaz annak a drognak legyen valami hatasa hogy erdemes legyen meg venni illetve hasznalni.boccs helyes irasert,mivelhogy telon jottem forumra :p grat szep lett
Cím: Drog Rendszer
Írta: Gabor.. - 2012. Május 10. - 18:34:02
Kösz. :D  Van hatása a /drogbead paranccsal lehet beadni magadnak, és akkor szédelegni kezdesz. :D
Cím: Drog Rendszer
Írta: ZyZu. - 2012. Május 11. - 17:37:03
Jó lett!
Cím: Drog Rendszer
Írta: Gabor.. - 2012. Május 11. - 18:30:58
Köszöntem. :D  Most nézem, hogy milyen régen írtam. :D
Cím: Drog Rendszer
Írta: ZyZu. - 2012. Május 11. - 20:00:31
Idézetet írta: Gabor.. date=1336753858\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"19266\" data-ipsquote-contentclass=\"forums_Topic
Köszöntem. :D  Most nézem, hogy milyen régen írtam. :D
 
Lehet, hogy réggi de nagyón jó :D  :thumbsup:
Cím: Drog Rendszer
Írta: xSkillZ7x - 2012. Május 10. - 18:26:49
En is ilyet akartam csinalni.Am jo.Nem pribaltam ,de tetszik.Am ha akarodv akkor szerintw m bo aztvitsd valami jo hatassal,azaz annak a drognak legyen valami hatasa hogy erdemes legyen meg venni illetve hasznalni.boccs helyes irasert,mivelhogy telon jottem forumra :p grat szep lett
Cím: Drog Rendszer
Írta: Gabor.. - 2012. Május 10. - 18:34:02
Kösz. :D  Van hatása a /drogbead paranccsal lehet beadni magadnak, és akkor szédelegni kezdesz. :D
Cím: Drog Rendszer
Írta: ZyZu. - 2012. Május 11. - 17:37:03
Jó lett!
Cím: Drog Rendszer
Írta: Gabor.. - 2012. Május 11. - 18:30:58
Köszöntem. :D  Most nézem, hogy milyen régen írtam. :D
Cím: Drog Rendszer
Írta: ZyZu. - 2012. Május 11. - 20:00:31
Idézetet írta: Gabor.. date=1336753858\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"19266\" data-ipsquote-contentclass=\"forums_Topic
Köszöntem. :D  Most nézem, hogy milyen régen írtam. :D
 
Lehet, hogy réggi de nagyón jó :D  :thumbsup:
Cím: Drog Rendszer
Írta: Bonfini - 2012. November 17. - 18:45:25
Tudom nem egy mai téma,de én régebben letöltöttem és tökéletesen mûködött,de most ha belemegyek a cp-be mindig azt írja hogy \"nem vagy a felszedõ checkpontban\".
Cím: Drog Rendszer
Írta: Johnies00 - 2012. November 18. - 13:51:59
Leírás alapján nem rossz. :)

Viszont az elmélet részét nem értem :D A vadkenderbõl nem kell elõállítani semmit, és nem belõni kell tehát nem értem :P


Lehet csinálok én is egy drogrendszert unalmamba. ^^
Cím: Drog Rendszer
Írta: Gabor.. - 2012. November 18. - 14:39:28
Idézetet írta: Bonfini date=1353174325\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"19266\" data-ipsquote-contentclass=\"forums_Topic
Tudom nem egy mai téma,de én régebben letöltöttem és tökéletesen mûködött,de most ha belemegyek a cp-be mindig azt írja hogy \"nem vagy a felszedõ checkpontban\".
 
Fogalmam sincs, régen tényleg mûködött. :D

Leírás alapján nem rossz. :)

Viszont az elmélet részét nem értem :D A vadkenderbõl nem kell elõállítani semmit, és nem belõni kell tehát nem értem :P


Lehet csinálok én is egy drogrendszert unalmamba. ^^

 
[/quote]Nem értem mire gondolsz... De van egy sejtésem, szerintem a folyamattal kapcsolatban. Tudom, hogy a vandkenderes dolog nem így zajlik, csak akkoriban még nehéz volt számomra máshogy, vagy más logika alapján megírni.  :D
Amúgy jó régen írtam, ekkor még kezdõ voltam. :D