Üzenetek megjelenítése

Ez a szekció lehetővé teszi a felhasználó által írt összes hozzászólás megtekintését. Vedd figyelembe, hogy csak azokba a fórumokba írt hozzászólásokat látod, amelyekhez hozzáférésed van.


Témák - DrAkE

Oldalak: [1] 2 3 4
1
Fórum Archívum (Témák/Fórumok) / Re:MTA FEJLESZTŐT KERESEK ! ! !
« Dátum: 2016. Április 28. - 15:14:27 »
Parancsolj, itt egy lista az MTA fejlesztőkről:
https://github.com/multitheftauto/mtasa-blue/graphs/contributors

2
Fórum Archívum (Témák/Fórumok) / Re:Mod Kérés
« Dátum: 2015. November 24. - 13:38:33 »
Lófaszt.

3
Fórum Archívum (Témák/Fórumok) / ÁTHELYEZVE: Kilóméter óra
« Dátum: 2015. Augusztus 19. - 02:38:59 »
A téma át lett helyezve a következőbe: Archívum.
http://sampforum.hu/index.php?topic=61739.0" class="bbc_link">http://http://sampforum.hu/index.php?topic=61739.0

5
Fórum Archívum (Témák/Fórumok) / Re:Lua in SA-MP v0.2.4
« Dátum: 2015. Július 22. - 11:42:16 »
Idézetet írta: Asdelon date=1437556714\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"56544\" data-ipsquote-contentclass=\"forums_Topic
Hát olyanokra, hogy nagyobb megterhelés lenne magának a szervernek a meghívása, és aztán azzal üzemeltetése. Mint a legtöbb plugin, lassítja valamivel a szervert, és hogy egy ilyen változás, ami javarészt minden lekért funkciót érint, nem lassít rajtuk? vagy minimális?
 
A pluginok minek lassítanák a szervert? Épp hogy natív C/C++-ban megírt funkciók gyorsabbak, mint PAWNban megírtak. Maga a plugin nem terheli a szervert, és nem is lassítja, mivel a meghívások és a függvények mind natív C++-ban vannak megírva, így a funkciók, eljárások nem az alap PAWN funkciókon keresztül megy.

Dupla hozzászólás automatikusan összefûzve. ( [time]2015. július 22. 21:47:41[/time] )

v0.2.5:
- \"tocolor\" funkció hozzáadva, ami átkonvertálja a színt/számot 64 bitből 32 bitbe (Lua 64bites, PAWN 32bites, ezért volt egy kis kavarodás).
Használat:
 

tocolor(r, g, b, a)
tocolor(r, g, b)
tocolor(hex color)
I.E.:
tocolor(255, 0, 0, 255)
tocolor(255, 0, 0)
tocolor(0xFF0000FF)

 
Letöltés:
Plugin - Plugin
Forráskód
U.I.: Ha időm engedi, akkor létrehozok egy wikit a pluginhoz.

6
Általános / Vélemény az 1.5ről?
« Dátum: 2015. Március 30. - 17:50:16 »
Mi a véleményetek a legújabb 1.5-ös verzióról? Én máris sok lehetőséget látok benne, shader + textúra csere = mozi:
\"2vltcvt.jpg\"
\"2r61rn7.jpg\"

7
Pluginok és Programok / Lua in SA-MP v0.2.5
« Dátum: 2015. Július 02. - 00:04:48 »
\"2wrpy7d.jpg\"
 
Bevezetés
Nos, mint a téma nevéből is kivehető (remélem) ez a plugin lehetővé teszi a Lua nyelv használatát SA-MP szervereknél. Sok hasonlóságot lehet majd felfedezni benne MTA-val szemben. Igazság szerint gyakorlásként indult, majd kinőtte magát azzá, ami most. Mivel ez még ALPHA, ezért természetesen előfordulnak benne hibák, amiket (remélhetőleg) Ti segítségetekkel (tesztelésekkel) szeretném majd orvosolni. Maga a plugin felépítése egyszerű: úgynevezett resourcek vannak (csomagok), ezeken belül pedig megtalálható egy meta.xml fájl, illetve a lua fájlok. Maga a meta.xml tartalmazza milyen fájlokat is olvasson be (egyenlőre csak fájlokat olvas be, később több funkciója is lehet). SA-MPal ellentétben annyiban különbözik itt egy callback és egy függvény, hogy a neve kis kezdőbetűvel kezdődik (pl.: OnPlayerConnect helyett onPlayerConnect, GivePlayerMoney helyett givePlayerMoney). A callbackek kezelők segítségével kerülnek meghívásra (addEventHandler), parancsok addCommandHandler funkcióval hozható létre, ahol is megadhatod, mennyi, és milyen paramétereket akarsz kezelni. OnGameModeInit, OnFilterScriptInit helyett onScriptInit, illetve OnGameModeExit, OnFilterScriptExit helyett onScriptExit kerül meghívásra. Azoknál a funkcióknál, ahol változóba tölti az értékeket, az adott funkció több értékkel tér vissza pl.::
 

GetPlayerPos(playerid, &X, &Y, &Z);

 
Helyette:
 

float X, float Y, float Z getPlayerPos(playerid)
local X, Y, Z = getPlayerPos(playerid)

 
Illetve a következő Lua funkciók biztonsági okokból kivannak véve: dofile, loadfile, loadlib, require, setfenv, getfenv
Telepítés
A csomagban található fájlokat a SA-MP szervered azonos nevű mappájában kell elhelyezni. Fontos, hogy a server.cfgbe a következő értékek legyenek:
 

filterscripts rcon
gamemode0 base
plugins lua_samp

 
Az \"rcon\" nevezetű filterscript az OnRconCommand callback meghívása miatt kell, míg a base játékmód, hogy eltudjon indulni a szerver (ebben a módban csak egy main, illetve egy OnGameModeInit eljárás található). Amint ezekkel végeztünk létre kell hoznunk a \"lua/resources\" nevű mappát, majd elhelyezni egy resource-t amit elszeretnénk indítani (csomagban megtalálható az \"lvdm\" játékmód luává átalakított változata). A \"lua\" mappa felépítése a következő kell, hogy legyen:
 

lua
|-- resources
|    |-- resourcenév
|         +-- meta.xml
|         +-- a metában megegyező lua fájlok
|-- modules
     +-- module_name.dll

 
Amint ezekkel végeztünk nincs más teendő, mint elindítani a resourcet a következő konzol paranccsal: \"start resourcenév\", ha mindent jól csináltunk akkor hasonló képet kell, hogy lássuk:
\"kdqwlz.jpg\"
A resourceokat a \"stop resourcenév\" konzolos paranccsal tudod leállítani.
Példa
lua/resources/lvdm mappa tartalma:
meta.xml:
 

<meta>
<!-- Scripts -->
<script src=\"lvdm.lua\" />
</meta>

 
lvdm.lua:
 

local COLOR_GREY = 0xAFAFAFAA
local COLOR_GREEN = 0x33AA33AA
local COLOR_RED = 0xAA3333AA
local COLOR_YELLOW = 0xFFFF00AA
local COLOR_WHITE = 0xFFFFFFAA
local PocketMoney = 50000 -- Amount player recieves on spawn.
local GIVECASH_DELAY = 5000 -- Time in ms between /givecash commands.
local NUMVALUES = 4
--forward MoneyGrubScoreUpdate()
--forward Givecashdelaytimer(playerid)
--forward SetPlayerRandomSpawn(playerid)
--forward SetupPlayerForClassSelection(playerid)
--forward GameModeExitFunc()
--forward sendClientMessage(playerid, const str[], define)
--forward addEventHandler(\"SendAllFormattedText(playerid, const str[], define)
--------------------------------------------------------------------------------------------------------
local CashScoreOld
local iSpawnSet = {}
local gRandomPlayerSpawns = {
{1958.3783,1343.1572,15.3746},
{2199.6531,1393.3678,10.8203},
{2483.5977,1222.0825,10.8203},
{2637.2712,1129.2743,11.1797},
{2000.0106,1521.1111,17.0625},
{2024.8190,1917.9425,12.3386},
{2261.9048,2035.9547,10.8203},
{2262.0986,2398.6572,10.8203},
{2244.2566,2523.7280,10.8203},
{2335.3228,2786.4478,10.8203},
{2150.0186,2734.2297,11.1763},
{2158.0811,2797.5488,10.8203},
{1969.8301,2722.8564,10.8203},
{1652.0555,2709.4072,10.8265},
{1564.0052,2756.9463,10.8203},
{1271.5452,2554.0227,10.8203},
{1441.5894,2567.9099,10.8203},
{1480.6473,2213.5718,11.0234},
{1400.5906,2225.6960,11.0234},
{1598.8419,2221.5676,11.0625},
{1318.7759,1251.3580,10.8203},
{1558.0731,1007.8292,10.8125},
--{-857.0551,1536.6832,22.5870},   Out of Town Spawns
--{817.3494,856.5039,12.7891},
--{116.9315,1110.1823,13.6094},
--{-18.8529,1176.0159,19.5634},
--{-315.0575,1774.0636,43.6406},
{1705.2347,1025.6808,10.8203}
}
local gCopPlayerSpawns = {
{2297.1064,2452.0115,10.8203},
{2297.0452,2468.6743,10.8203}
}
--Round code stolen from mike\'s Manhunt :P
--local gRoundTime = 3600000;               -- Round time - 1 hour
--local gRoundTime = 1200000;               -- Round time - 20 mins
--local gRoundTime = 900000;               -- Round time - 15 mins
--local gRoundTime = 600000;               -- Round time - 10 mins
--local gRoundTime = 300000;               -- Round time - 5 mins
--local gRoundTime = 120000;               -- Round time - 2 mins
--local gRoundTime = 60000;               -- Round time - 1 min
local gActivePlayers = {}
local gLastGaveCash = {}
--------------------------------------------------------------------------------------------------------
addEventHandler(\"onScriptInit\", function()
print(\"\\n----------------------------------\")
print(\"  Running LVDM ~MoneyGrub\\n\")
print(\"      Coded By\")
print(\"         Jax\")
print(\"----------------------------------\\n\")
end)
--------------------------------------------------------------------------------------------------------
addEventHandler(\"onPlayerRequestSpawn\", function(playerid)
--printf(\"OnPlayerRequestSpawn(%d)\",playerid)
end)
--------------------------------------------------------------------------------------------------------
addEventHandler(\"onPlayerPickUpPickup\", function(playerid, pickupid)
--local s[256];
--format(s,256,\"Picked up %d\",pickupid)
--sendClientMessage(playerid,0xFFFFFFFF,s)
end)
--------------------------------------------------------------------------------------------------------
function MoneyGrubScoreUpdate()
local CashScore;
local name;
for i=0,499 do
if isPlayerConnected(i) then
   name = getPlayerName(i)
            CashScore = getPlayerMoney(i)
   setPlayerScore(i, CashScore)
   if (CashScore > CashScoreOld) then
      CashScoreOld = CashScore
      --format(string, sizeof(string), \"$$$ %s is now in the lead $$$\", name)
      --sendClientMessageToAll(COLOR_YELLOW, string)
   end
end
end
end
--------------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------------
addEventHandler(\"onPlayerConnect\", function(playerid)
gameTextForPlayer(playerid,\"~w~SA-MP: ~r~Las Venturas ~g~MoneyGrub\",5000,5)
sendClientMessage(playerid, 0xFF004040, \"Welcome to Las Venturas MoneyGrub, For help type /help.\")
gActivePlayers[playerid] = gActivePlayers[playerid] + 1
gLastGaveCash[playerid] = getTickCount()
end)
--------------------------------------------------------------------------------------------------------
addEventHandler(\"onPlayerDisconnect\", function(playerid)
gActivePlayers[playerid] = gActivePlayers[playerid] - 1;
end)
--------------------------------------------------------------------------------------------------------
addCommandHandler(\"help\", function(playerid)
sendClientMessage(playerid, 0xFF004040, \"Las Venturas Deathmatch: Money Grub Coded By Jax and the SA-MP Team.\")
sendClientMessage(playerid, 0xFF004040, \"Type: /objective : to find out what to do in this gamemode.\")
sendClientMessage(playerid, 0xFF004040, \"Type: /givecash [playerid] [money-amount] to send money to other players.\")
sendClientMessage(playerid, 0xFF004040, \"Type: /tips : to see some tips from the creator of the gamemode.\")
end)
addCommandHandler(\"objective\", function(playerid)
sendClientMessage(playerid, 0xFF004040, \"This gamemode is faily open, there\'s no specific win / endgame conditions to meet.\")
sendClientMessage(playerid, 0xFF004040, \"In LVDM:Money Grub, when you kill a player, you will receive whatever money they have.\")
sendClientMessage(playerid, 0xFF004040, \"Consequently, if you have lots of money, and you die, your killer gets your cash.\")
sendClientMessage(playerid, 0xFF004040, \"However, you\'re not forced to kill players for money, you can always gamble in the\")
sendClientMessage(playerid, 0xFF004040, \"Casino\'s.\", 0)
end)
addCommandHandler(\"tips\", function(playerid)
sendClientMessage(playerid, 0xFF004040, \"Spawning with just a desert eagle might sound lame, however the idea of this\")
sendClientMessage(playerid, 0xFF004040, \"gamemode is to get some cash, get better guns, then go after whoever has the\")
sendClientMessage(playerid, 0xFF004040, \"most cash. Once you\'ve got the most cash, the idea is to stay alive(with the\")
sendClientMessage(playerid, 0xFF004040, \"cash intact)until the game ends, simple right?\")
end)
addCommandHandler(\"givecash\", function(playerid, gp, amount)
if not gp then
sendClientMessage(playerid, COLOR_WHITE, \"USAGE: /givecash [playerid] [amount]\")
return
end
local giveplayerid = tonumber(gp)
if not amount then
sendClientMessage(playerid, COLOR_WHITE, \"USAGE: /givecash [playerid] [amount]\")
return
end
local moneys = tonumber(amount)
--printf(\"givecash_command: %d %d\",giveplayerid,moneys)
 
if isPlayerConnected(giveplayerid) then
local giveplayer = getPlayerName(giveplayerid)
local sendername = getPlayerName(playerid)
playermoney = getPlayerMoney(playerid)
if (moneys > 0 and playermoney >= moneys) then
   givePlayerMoney(playerid, (0 - moneys))
   givePlayerMoney(giveplayerid, moneys)
   sendClientMessage(playerid, COLOR_YELLOW, string.format(\"You have sent %s(player: %d), $%d.\", giveplayer,giveplayerid, moneys))
   sendClientMessage(giveplayerid, COLOR_YELLOW, string.format(\"You have recieved $%d from %s(player: %d).\", moneys, sendername, playerid))
   print(string.format(\"%s(playerid:%d) has transfered %d to %s(playerid:%d)\", sendername, playerid, moneys, giveplayer, giveplayerid))
else
   sendClientMessage(playerid, COLOR_YELLOW, \"Invalid transaction amount.\")
end
else
sendClientMessage(playerid, COLOR_YELLOW, string.format(\"%d is not an active player.\", giveplayerid))
end
end)
--------------------------------------------------------------------------------------------------------
addEventHandler(\"onPlayerSpawn\", function(playerid)
givePlayerMoney(playerid, PocketMoney)
setPlayerInterior(playerid, 0)
setPlayerRandomSpawn(playerid)
togglePlayerClock(playerid, true)
end)
 
function setPlayerRandomSpawn(playerid)
if (iSpawnSet[playerid] == 1) then
local rand = math.random(#gCopPlayerSpawns)
setPlayerPos(playerid, gCopPlayerSpawns[rand][1], gCopPlayerSpawns[rand][2], gCopPlayerSpawns[rand][3]) -- Warp the player
setPlayerFacingAngle(playerid, 270.0)
end
if (iSpawnSet[playerid] == 0) then
local rand = math.random(#gRandomPlayerSpawns)
setPlayerPos(playerid, gRandomPlayerSpawns[rand][1], gRandomPlayerSpawns[rand][2], gRandomPlayerSpawns[rand][3]) -- Warp the player
end
end
--------------------------------------------------------------------------------------------------------
addEventHandler(\"onPlayerDeath\", function(playerid, killerid, reason)
local playercash;
if(killerid == INVALID_PLAYER_ID) then
sendDeathMessage(INVALID_PLAYER_ID, playerid, reason)
resetPlayerMoney(playerid)
else
sendDeathMessage(killerid, playerid, reason)
setPlayerScore(killerid, getPlayerScore(killerid) + 1)
playercash = getPlayerMoney(playerid)
if (playercash > 0) then
   givePlayerMoney(killerid, playercash)
   resetPlayerMoney(playerid)
else
end
end
end)
--------------------------------------------------------------------------------------------------------
addEventHandler(\"onPlayerRequestClass\", function(playerid, classid)
iSpawnSet[playerid] = 0;
setupPlayerForClassSelection(playerid)
end)
function setupPlayerForClassSelection(playerid)
setPlayerInterior(playerid, 14)
setPlayerPos(playerid,258.4893, -41.4008, 1002.0234)
setPlayerFacingAngle(playerid, 270.0)
setPlayerCameraPos(playerid, 256.0815, -43.0475, 1004.0234)
setPlayerCameraLookAt(playerid, 258.4893, -41.4008, 1002.0234)
end
addEventHandler(\"onScriptInit\", function()
setGameModeText(\"Ventura\'s DM~MG\")
usePlayerPedAnims()
showPlayerMarkers(true)
showNameTags(true)
enableStuntBonusForAll(false)
-- Player Class\'s
addPlayerClass(0,1958.3783,1343.1572,15.3746,270.1425,0,0,24,300,-1,-1)
addPlayerClass(266,1958.3783,1343.1572,15.3746,270.1425,0,0,24,300,-1,-1)
addPlayerClass(267,1958.3783,1343.1572,15.3746,270.1425,0,0,24,300,-1,-1)
addPlayerClass(268,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(269,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(270,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(271,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(272,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(280,1958.3783,1343.1572,15.3746,270.1425,0,0,24,300,-1,-1)
addPlayerClass(281,1958.3783,1343.1572,15.3746,270.1425,0,0,24,300,-1,-1)
addPlayerClass(282,1958.3783,1343.1572,15.3746,270.1425,0,0,24,300,-1,-1)
addPlayerClass(283,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(284,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(285,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(286,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(287,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(254,1958.3783,1343.1572,15.3746,0.0,0,0,24,300,-1,-1)
addPlayerClass(255,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(256,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(257,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(258,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(259,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(260,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(261,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(262,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(263,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(264,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(274,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(275,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(276,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(1,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(2,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(290,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(291,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(292,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(293,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(294,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(295,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(296,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(297,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(298,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(299,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(277,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(278,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(279,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(288,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(47,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(48,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(49,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(50,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(51,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(52,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(53,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(54,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(55,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(56,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(57,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(58,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(59,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(60,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(61,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(62,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(63,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(64,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(66,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(67,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(68,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(69,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(70,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(71,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(72,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(73,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(75,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(76,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(78,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(79,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(80,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(81,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(82,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(83,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(84,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(85,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(87,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(88,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(89,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(91,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(92,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(93,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(95,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(96,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(97,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(98,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(99,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(100,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(101,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(102,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(103,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(104,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(105,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(106,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(107,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(108,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(109,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(110,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(111,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(112,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(113,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(114,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(115,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(116,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(117,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(118,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(120,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(121,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(122,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(123,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(124,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(125,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(126,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(127,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(128,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(129,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(131,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(133,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(134,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(135,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(136,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(137,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(138,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(139,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(140,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(141,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(142,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(143,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(144,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(145,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(146,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(147,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(148,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(150,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(151,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(152,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(153,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(154,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(155,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(156,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(157,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(158,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(159,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(160,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(161,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(162,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(163,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(164,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(165,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(166,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(167,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(168,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(169,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(170,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(171,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(172,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(173,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(174,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(175,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(176,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(177,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(178,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(179,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(180,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(181,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(182,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(183,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(184,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(185,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(186,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(187,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(188,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(189,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(190,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(191,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(192,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(193,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(194,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(195,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(196,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(197,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(198,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(199,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(200,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(201,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(202,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(203,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(204,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(205,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(206,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(207,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(209,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(210,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(211,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(212,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(213,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(214,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(215,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(216,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(217,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(218,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(219,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(220,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(221,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(222,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(223,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(224,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(225,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(226,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(227,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(228,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(229,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(230,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(231,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(232,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(233,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(234,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(235,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(236,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(237,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(238,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(239,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(240,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(241,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(242,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(243,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(244,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(245,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(246,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(247,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(248,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(249,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(250,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(251,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
addPlayerClass(253,1958.3783,1343.1572,15.3746,269.1425,0,0,24,300,-1,-1)
-- Car Spawns
addStaticVehicle(451,2040.0520,1319.2799,10.3779,183.2439,16,16)
addStaticVehicle(429,2040.5247,1359.2783,10.3516,177.1306,13,13)
addStaticVehicle(421,2110.4102,1398.3672,10.7552,359.5964,13,13)
addStaticVehicle(411,2074.9624,1479.2120,10.3990,359.6861,64,64)
addStaticVehicle(477,2075.6038,1666.9750,10.4252,359.7507,94,94)
addStaticVehicle(541,2119.5845,1938.5969,10.2967,181.9064,22,22)
addStaticVehicle(541,1843.7881,1216.0122,10.4556,270.8793,60,1)
addStaticVehicle(402,1944.1003,1344.7717,8.9411,0.8168,30,30)
addStaticVehicle(402,1679.2278,1316.6287,10.6520,180.4150,90,90)
addStaticVehicle(415,1685.4872,1751.9667,10.5990,268.1183,25,1)
addStaticVehicle(411,2034.5016,1912.5874,11.9048,0.2909,123,1)
addStaticVehicle(411,2172.1682,1988.8643,10.5474,89.9151,116,1)
addStaticVehicle(429,2245.5759,2042.4166,10.5000,270.7350,14,14)
addStaticVehicle(477,2361.1538,1993.9761,10.4260,178.3929,101,1)
addStaticVehicle(550,2221.9946,1998.7787,9.6815,92.6188,53,53)
addStaticVehicle(558,2243.3833,1952.4221,14.9761,359.4796,116,1)
addStaticVehicle(587,2276.7085,1938.7263,31.5046,359.2321,40,1)
addStaticVehicle(587,2602.7769,1853.0667,10.5468,91.4813,43,1)
addStaticVehicle(603,2610.7600,1694.2588,10.6585,89.3303,69,1)
addStaticVehicle(587,2635.2419,1075.7726,10.5472,89.9571,53,1)
addStaticVehicle(437,2577.2354,1038.8063,10.4777,181.7069,35,1)
addStaticVehicle(535,2039.1257,1545.0879,10.3481,359.6690,123,1)
addStaticVehicle(535,2009.8782,2411.7524,10.5828,178.9618,66,1)
addStaticVehicle(429,2010.0841,2489.5510,10.5003,268.7720,1,2)
addStaticVehicle(415,2076.4033,2468.7947,10.5923,359.9186,36,1)
addStaticVehicle(487,2093.2754,2414.9421,74.7556,89.0247,26,57)
addStaticVehicle(506,2352.9026,2577.9768,10.5201,0.4091,7,7)
addStaticVehicle(506,2166.6963,2741.0413,10.5245,89.7816,52,52)
addStaticVehicle(411,1960.9989,2754.9072,10.5473,200.4316,112,1)
addStaticVehicle(429,1919.5863,2760.7595,10.5079,100.0753,2,1)
addStaticVehicle(415,1673.8038,2693.8044,10.5912,359.7903,40,1)
addStaticVehicle(402,1591.0482,2746.3982,10.6519,172.5125,30,30)
addStaticVehicle(603,1580.4537,2838.2886,10.6614,181.4573,75,77)
addStaticVehicle(550,1555.2734,2750.5261,10.6388,91.7773,62,62)
addStaticVehicle(535,1455.9305,2878.5288,10.5837,181.0987,118,1)
addStaticVehicle(477,1537.8425,2578.0525,10.5662,0.0650,121,1)
addStaticVehicle(451,1433.1594,2607.3762,10.3781,88.0013,16,16)
addStaticVehicle(603,2223.5898,1288.1464,10.5104,182.0297,18,1)
addStaticVehicle(558,2451.6707,1207.1179,10.4510,179.8960,24,1)
addStaticVehicle(550,2461.7253,1357.9705,10.6389,180.2927,62,62)
addStaticVehicle(558,2461.8162,1629.2268,10.4496,181.4625,117,1)
addStaticVehicle(477,2395.7554,1658.9591,10.5740,359.7374,0,1)
addStaticVehicle(404,1553.3696,1020.2884,10.5532,270.6825,119,50)
addStaticVehicle(400,1380.8304,1159.1782,10.9128,355.7117,123,1)
addStaticVehicle(418,1383.4630,1035.0420,10.9131,91.2515,117,227)
addStaticVehicle(404,1445.4526,974.2831,10.5534,1.6213,109,100)
addStaticVehicle(400,1704.2365,940.1490,10.9127,91.9048,113,1)
addStaticVehicle(404,1658.5463,1028.5432,10.5533,359.8419,101,101)
addStaticVehicle(581,1677.6628,1040.1930,10.4136,178.7038,58,1)
addStaticVehicle(581,1383.6959,1042.2114,10.4121,85.7269,66,1)
addStaticVehicle(581,1064.2332,1215.4158,10.4157,177.2942,72,1)
addStaticVehicle(581,1111.4536,1788.3893,10.4158,92.4627,72,1)
addStaticVehicle(522,953.2818,1806.1392,8.2188,235.0706,3,8)
addStaticVehicle(522,995.5328,1886.6055,10.5359,90.1048,3,8)
addStaticVehicle(521,993.7083,2267.4133,11.0315,1.5610,75,13)
addStaticVehicle(535,1439.5662,1999.9822,10.5843,0.4194,66,1)
addStaticVehicle(522,1430.2354,1999.0144,10.3896,352.0951,6,25)
addStaticVehicle(522,2156.3540,2188.6572,10.2414,22.6504,6,25)
addStaticVehicle(598,2277.6846,2477.1096,10.5652,180.1090,0,1)
addStaticVehicle(598,2268.9888,2443.1697,10.5662,181.8062,0,1)
addStaticVehicle(598,2256.2891,2458.5110,10.5680,358.7335,0,1)
addStaticVehicle(598,2251.6921,2477.0205,10.5671,179.5244,0,1)
addStaticVehicle(523,2294.7305,2441.2651,10.3860,9.3764,0,0)
addStaticVehicle(523,2290.7268,2441.3323,10.3944,16.4594,0,0)
addStaticVehicle(523,2295.5503,2455.9656,2.8444,272.6913,0,0)
addStaticVehicle(522,2476.7900,2532.2222,21.4416,0.5081,8,82)
addStaticVehicle(522,2580.5320,2267.9595,10.3917,271.2372,8,82)
addStaticVehicle(522,2814.4331,2364.6641,10.3907,89.6752,36,105)
addStaticVehicle(535,2827.4143,2345.6953,10.5768,270.0668,97,1)
addStaticVehicle(521,1670.1089,1297.8322,10.3864,359.4936,87,118)
addStaticVehicle(487,1614.7153,1548.7513,11.2749,347.1516,58,8)
addStaticVehicle(487,1647.7902,1538.9934,11.2433,51.8071,0,8)
addStaticVehicle(487,1608.3851,1630.7268,11.2840,174.5517,58,8)
addStaticVehicle(476,1283.0006,1324.8849,9.5332,275.0468,7,6) --11.5332
addStaticVehicle(476,1283.5107,1361.3171,9.5382,271.1684,1,6) --11.5382
addStaticVehicle(476,1283.6847,1386.5137,11.5300,272.1003,89,91)
addStaticVehicle(476,1288.0499,1403.6605,11.5295,243.5028,119,117)
addStaticVehicle(415,1319.1038,1279.1791,10.5931,0.9661,62,1)
addStaticVehicle(521,1710.5763,1805.9275,10.3911,176.5028,92,3)
addStaticVehicle(521,2805.1650,2027.0028,10.3920,357.5978,92,3)
addStaticVehicle(535,2822.3628,2240.3594,10.5812,89.7540,123,1)
addStaticVehicle(521,2876.8013,2326.8418,10.3914,267.8946,115,118)
addStaticVehicle(429,2842.0554,2637.0105,10.5000,182.2949,1,3)
addStaticVehicle(549,2494.4214,2813.9348,10.5172,316.9462,72,39)
addStaticVehicle(549,2327.6484,2787.7327,10.5174,179.5639,75,39)
addStaticVehicle(549,2142.6970,2806.6758,10.5176,89.8970,79,39)
addStaticVehicle(521,2139.7012,2799.2114,10.3917,229.6327,25,118)
addStaticVehicle(521,2104.9446,2658.1331,10.3834,82.2700,36,0)
addStaticVehicle(521,1914.2322,2148.2590,10.3906,267.7297,36,0)
addStaticVehicle(549,1904.7527,2157.4312,10.5175,183.7728,83,36)
addStaticVehicle(549,1532.6139,2258.0173,10.5176,359.1516,84,36)
addStaticVehicle(521,1534.3204,2202.8970,10.3644,4.9108,118,118)
addStaticVehicle(549,1613.1553,2200.2664,10.5176,89.6204,89,35)
addStaticVehicle(400,1552.1292,2341.7854,10.9126,274.0815,101,1)
addStaticVehicle(404,1637.6285,2329.8774,10.5538,89.6408,101,101)
addStaticVehicle(400,1357.4165,2259.7158,10.9126,269.5567,62,1)
addStaticVehicle(411,1281.7458,2571.6719,10.5472,270.6128,106,1)
addStaticVehicle(522,1305.5295,2528.3076,10.3955,88.7249,3,8)
addStaticVehicle(521,993.9020,2159.4194,10.3905,88.8805,74,74)
addStaticVehicle(415,1512.7134,787.6931,10.5921,359.5796,75,1)
addStaticVehicle(522,2299.5872,1469.7910,10.3815,258.4984,3,8)
addStaticVehicle(522,2133.6428,1012.8537,10.3789,87.1290,3,8)
--Monday 13th Additions ~ Jax
addStaticVehicle(415,2266.7336,648.4756,11.0053,177.8517,0,1) --
addStaticVehicle(461,2404.6636,647.9255,10.7919,183.7688,53,1) --
addStaticVehicle(506,2628.1047,746.8704,10.5246,352.7574,3,3) --
addStaticVehicle(549,2817.6445,928.3469,10.4470,359.5235,72,39) --
-- --- uncommented
addStaticVehicle(562,1919.8829,947.1886,10.4715,359.4453,11,1) --
addStaticVehicle(562,1881.6346,1006.7653,10.4783,86.9967,11,1) --
addStaticVehicle(562,2038.1044,1006.4022,10.4040,179.2641,11,1) --
addStaticVehicle(562,2038.1614,1014.8566,10.4057,179.8665,11,1) --
addStaticVehicle(562,2038.0966,1026.7987,10.4040,180.6107,11,1) --
-- --- uncommented end
--Uber haxed
addStaticVehicle(422,9.1065,1165.5066,19.5855,2.1281,101,25) --
addStaticVehicle(463,19.8059,1163.7103,19.1504,346.3326,11,11) --
addStaticVehicle(463,12.5740,1232.2848,18.8822,121.8670,22,22) --
--addStaticVehicle(434,-110.8473,1133.7113,19.7091,359.7000,2,2) --hotknife
addStaticVehicle(586,69.4633,1217.0189,18.3304,158.9345,10,1) --
addStaticVehicle(586,-199.4185,1223.0405,19.2624,176.7001,25,1) --
--addStaticVehicle(605,-340.2598,1177.4846,19.5565,182.6176,43,8) -- SMASHED UP CAR
addStaticVehicle(476,325.4121,2538.5999,17.5184,181.2964,71,77) --
addStaticVehicle(476,291.0975,2540.0410,17.5276,182.7206,7,6) --
addStaticVehicle(576,384.2365,2602.1763,16.0926,192.4858,72,1) --
addStaticVehicle(586,423.8012,2541.6870,15.9708,338.2426,10,1) --
addStaticVehicle(586,-244.0047,2724.5439,62.2077,51.5825,10,1) --
addStaticVehicle(586,-311.1414,2659.4329,62.4513,310.9601,27,1) --
--uber haxed x 50
--addStaticVehicle(406,547.4633,843.0204,-39.8406,285.2948,1,1) -- DUMPER
--addStaticVehicle(406,625.1979,828.9873,-41.4497,71.3360,1,1) -- DUMPER
--addStaticVehicle(486,680.7997,919.0510,-40.4735,105.9145,1,1) -- DOZER
--addStaticVehicle(486,674.3994,927.7518,-40.6087,128.6116,1,1) -- DOZER
addStaticVehicle(543,596.8064,866.2578,-43.2617,186.8359,67,8) --
addStaticVehicle(543,835.0838,836.8370,11.8739,14.8920,8,90) --
addStaticVehicle(549,843.1893,838.8093,12.5177,18.2348,79,39) --
--addStaticVehicle(605,319.3803,740.2404,6.7814,271.2593,8,90) -- SMASHED UP CAR
addStaticVehicle(400,-235.9767,1045.8623,19.8158,180.0806,75,1) --
addStaticVehicle(599,-211.5940,998.9857,19.8437,265.4935,0,1) --
addStaticVehicle(422,-304.0620,1024.1111,19.5714,94.1812,96,25) --
addStaticVehicle(588,-290.2229,1317.0276,54.1871,81.7529,1,1) --
--addStaticVehicle(424,-330.2399,1514.3022,75.1388,179.1514,2,2) --BF INJECT
addStaticVehicle(451,-290.3145,1567.1534,75.0654,133.1694,61,61) --
addStaticVehicle(470,280.4914,1945.6143,17.6317,310.3278,43,0) --
addStaticVehicle(470,272.2862,1949.4713,17.6367,285.9714,43,0) --
addStaticVehicle(470,271.6122,1961.2386,17.6373,251.9081,43,0) --
addStaticVehicle(470,279.8705,1966.2362,17.6436,228.4709,43,0) --
--addStaticVehicle(548,292.2317,1923.6440,19.2898,235.3379,1,1) -- CARGOBOB
addStaticVehicle(433,277.6437,1985.7559,18.0772,270.4079,43,0) --
addStaticVehicle(433,277.4477,1994.8329,18.0773,267.7378,43,0) --
--addStaticVehicle(432,275.9634,2024.3629,17.6516,270.6823,43,0) -- Tank (can cause scary shit to go down)
addStaticVehicle(568,-441.3438,2215.7026,42.2489,191.7953,41,29) --
addStaticVehicle(568,-422.2956,2225.2612,42.2465,0.0616,41,29) --
addStaticVehicle(568,-371.7973,2234.5527,42.3497,285.9481,41,29) --
addStaticVehicle(568,-360.1159,2203.4272,42.3039,113.6446,41,29) --
addStaticVehicle(468,-660.7385,2315.2642,138.3866,358.7643,6,6) --
addStaticVehicle(460,-1029.2648,2237.2217,42.2679,260.5732,1,3) --
--Uber haxed x 100
-- --- uncommented
addStaticVehicle(419,95.0568,1056.5530,13.4068,192.1461,13,76) --
addStaticVehicle(429,114.7416,1048.3517,13.2890,174.9752,1,2) --
--addStaticVehicle(466,124.2480,1075.1835,13.3512,174.5334,78,76) -- exceeds model limit
addStaticVehicle(411,-290.0065,1759.4958,42.4154,89.7571,116,1) --
-- --- uncommented end
addStaticVehicle(522,-302.5649,1777.7349,42.2514,238.5039,6,25) --
addStaticVehicle(522,-302.9650,1776.1152,42.2588,239.9874,8,82) --
addStaticVehicle(533,-301.0404,1750.8517,42.3966,268.7585,75,1) --
addStaticVehicle(535,-866.1774,1557.2700,23.8319,269.3263,31,1) --
addStaticVehicle(550,-799.3062,1518.1556,26.7488,88.5295,53,53) --
addStaticVehicle(521,-749.9730,1589.8435,26.5311,125.6508,92,3) --
addStaticVehicle(522,-867.8612,1544.5282,22.5419,296.0923,3,3) --
addStaticVehicle(554,-904.2978,1553.8269,25.9229,266.6985,34,30) --
addStaticVehicle(521,-944.2642,1424.1603,29.6783,148.5582,92,3) --
-- Exceeds model limit, cars need model adjustments
-- --- uncommented
addStaticVehicle(429,-237.7157,2594.8804,62.3828,178.6802,1,2) --
--addStaticVehicle(431,-160.5815,2693.7185,62.2031,89.4133,47,74) --
addStaticVehicle(463,-196.3012,2774.4395,61.4775,303.8402,22,22) --
--addStaticVehicle(483,-204.1827,2608.7368,62.6956,179.9914,1,5) --
--addStaticVehicle(490,-295.4756,2674.9141,62.7434,359.3378,0,0) --
--addStaticVehicle(500,-301.5293,2687.6013,62.7723,87.9509,28,119) --
--addStaticVehicle(500,-301.6699,2680.3293,62.7393,89.7925,13,119) --
addStaticVehicle(519,-1341.1079,-254.3787,15.0701,321.6338,1,1) --
addStaticVehicle(519,-1371.1775,-232.3967,15.0676,315.6091,1,1) --
--addStaticVehicle(552,-1396.2028,-196.8298,13.8434,286.2720,56,56) --
--addStaticVehicle(552,-1312.4509,-284.4692,13.8417,354.3546,56,56) --
--addStaticVehicle(552,-1393.5995,-521.0770,13.8441,187.1324,56,56) --
--addStaticVehicle(513,-1355.6632,-488.9562,14.7157,191.2547,48,18) --
--addStaticVehicle(513,-1374.4580,-499.1462,14.7482,220.4057,54,34) --
--addStaticVehicle(553,-1197.8773,-489.6715,15.4841,0.4029,91,87) --
--addStaticVehicle(553,1852.9989,-2385.4009,14.8827,200.0707,102,119) --
--addStaticVehicle(583,1879.9594,-2349.1919,13.0875,11.0992,1,1) --
--addStaticVehicle(583,1620.9697,-2431.0752,13.0951,126.3341,1,1) --
--addStaticVehicle(583,1545.1564,-2409.2114,13.0953,23.5581,1,1) --
--addStaticVehicle(583,1656.3702,-2651.7913,13.0874,352.7619,1,1) --
addStaticVehicle(519,1642.9850,-2425.2063,14.4744,159.8745,1,1) --
addStaticVehicle(519,1734.1311,-2426.7563,14.4734,172.2036,1,1) --
-- --- uncommented end
addStaticVehicle(415,-680.9882,955.4495,11.9032,84.2754,36,1) --
addStaticVehicle(460,-816.3951,2222.7375,43.0045,268.1861,1,3) --
addStaticVehicle(460,-94.6885,455.4018,1.5719,250.5473,1,3) --
addStaticVehicle(460,1624.5901,565.8568,1.7817,200.5292,1,3) --
addStaticVehicle(460,1639.3567,572.2720,1.5311,206.6160,1,3) --
addStaticVehicle(460,2293.4219,517.5514,1.7537,270.7889,1,3) --
addStaticVehicle(460,2354.4690,518.5284,1.7450,270.2214,1,3) --
addStaticVehicle(460,772.4293,2912.5579,1.0753,69.6706,1,3) --
-- 22/4 UPDATE
addStaticVehicle(560,2133.0769,1019.2366,10.5259,90.5265,9,39) --
addStaticVehicle(560,2142.4023,1408.5675,10.5258,0.3660,17,1) --
addStaticVehicle(560,2196.3340,1856.8469,10.5257,179.8070,21,1) --
addStaticVehicle(560,2103.4146,2069.1514,10.5249,270.1451,33,0) --
addStaticVehicle(560,2361.8042,2210.9951,10.3848,178.7366,37,0) --
addStaticVehicle(560,-1993.2465,241.5329,34.8774,310.0117,41,29) --
addStaticVehicle(559,-1989.3235,270.1447,34.8321,88.6822,58,8) --
addStaticVehicle(559,-1946.2416,273.2482,35.1302,126.4200,60,1) --
addStaticVehicle(558,-1956.8257,271.4941,35.0984,71.7499,24,1) --
addStaticVehicle(562,-1952.8894,258.8604,40.7082,51.7172,17,1) --
addStaticVehicle(411,-1949.8689,266.5759,40.7776,216.4882,112,1) --
addStaticVehicle(429,-1988.0347,305.4242,34.8553,87.0725,2,1) --
addStaticVehicle(559,-1657.6660,1213.6195,6.9062,282.6953,13,8) --
addStaticVehicle(560,-1658.3722,1213.2236,13.3806,37.9052,52,39) --
addStaticVehicle(558,-1660.8994,1210.7589,20.7875,317.6098,36,1) --
addStaticVehicle(550,-1645.2401,1303.9883,6.8482,133.6013,7,7) --
addStaticVehicle(460,-1333.1960,903.7660,1.5568,0.5095,46,32) --
-- 25/4 UPDATE
addStaticVehicle(411,113.8611,1068.6182,13.3395,177.1330,116,1) --
addStaticVehicle(429,159.5199,1185.1160,14.7324,85.5769,1,2) --
addStaticVehicle(411,612.4678,1694.4126,6.7192,302.5539,75,1) --
addStaticVehicle(522,661.7609,1720.9894,6.5641,19.1231,6,25) --
addStaticVehicle(522,660.0554,1719.1187,6.5642,12.7699,8,82) --
addStaticVehicle(567,711.4207,1947.5208,5.4056,179.3810,90,96) --
addStaticVehicle(567,1031.8435,1920.3726,11.3369,89.4978,97,96) --
addStaticVehicle(567,1112.3754,1747.8737,10.6923,270.9278,102,114) --
addStaticVehicle(567,1641.6802,1299.2113,10.6869,271.4891,97,96) --
addStaticVehicle(567,2135.8757,1408.4512,10.6867,180.4562,90,96) --
addStaticVehicle(567,2262.2639,1469.2202,14.9177,91.1919,99,81) --
addStaticVehicle(567,2461.7380,1345.5385,10.6975,0.9317,114,1) --
addStaticVehicle(567,2804.4365,1332.5348,10.6283,271.7682,88,64) --
addStaticVehicle(560,2805.1685,1361.4004,10.4548,270.2340,17,1) --
addStaticVehicle(506,2853.5378,1361.4677,10.5149,269.6648,7,7) --
addStaticVehicle(567,2633.9832,2205.7061,10.6868,180.0076,93,64) --
addStaticVehicle(567,2119.9751,2049.3127,10.5423,180.1963,93,64) --
addStaticVehicle(567,2785.0261,-1835.0374,9.6874,226.9852,93,64) --
addStaticVehicle(567,2787.8975,-1876.2583,9.6966,0.5804,99,81) --
addStaticVehicle(411,2771.2993,-1841.5620,9.4870,20.7678,116,1) --
addStaticVehicle(420,1713.9319,1467.8354,10.5219,342.8006,6,1) -- taxi
addStaticPickup(371, 15, 1710.3359,1614.3585,10.1191) --para
addStaticPickup(371, 15, 1964.4523,1917.0341,130.9375) --para
addStaticPickup(371, 15, 2055.7258,2395.8589,150.4766) --para
addStaticPickup(371, 15, 2265.0120,1672.3837,94.9219) --para
addStaticPickup(371, 15, 2265.9739,1623.4060,94.9219) --para
--SetTimer(\"MoneyGrubScoreUpdate\", 1000, 1)
--SetTimer(\"GameModeExitFunc\", gRoundTime, 0)
end)

 
Letöltés
Forráskód
Plugin
U.I.
- A plugin egyenlőre még csak Windows alatt lett tesztelve, nem tudom, hogy Linux alatt hogy működik.
- Amennyiben kérdésetek van, vagy valami nem érhető (rossz fogalmazásom végett), itt nyugodtan feltehetitek.
- Későbbiek folyamán pedig próbálok objektum orientált funkciókat létrehozni.
- Természetesen építő jellegű kritikákat, ötleteket elfogadok.

8
Idézetet írta: Dfoglalo date=1414151747\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"51144\" data-ipsquote-contentclass=\"forums_Topic
Szerepel az idézett szabályrészben. Arról én nem tehetek, ha valaki nem képes elég figyelmesen elolvasni. De mivel ezek szerint nem vagytok képesek megtalálni, pedig kiveri a szemeteket, az az, hogy nem töltötte fel egy tárhelyre. Többször senki ne írjon ide ezzel kapcsolatban, mert továbbra sem itt van a helye, ha problémája van a figyelmeztetéssel. Ellenkező esetben ő is hasonló sorsra jut.
 
Nem akarok beleszólni, meg lehet kapok is érte warn-t (megéri), de Moderátorként nem tartozik a feladatköreid közé, hogy rávilágítsd szegényt, melyik szabályt is szegte meg a sok közül, vagy rámutatsz a hibára, ahelyett, hogy csak annyit írsz \"Bõvítsd a témát a szabályzatnak megfelelõen! 24 órát adok rá.\"?
Most ha a valós életben is szabályt szeg valaki, akkor oda írják, melyik bekezdés, hányadik paragrafus, stb, stb.

9
SA-MP: Szerverfejlesztés / dforeach
« Dátum: 2014. Július 20. - 23:00:13 »
dforeach
 
Mi ez?
Egy olyan függvénykönyvtár aminek segítségével iteratorokat hozhatsz létre, és kezelheted vele azokat. Maga a könyvtár NAGY MENNYISÉGBEN hasonlít a Y_Less által létrehozott foreach könyvtárra, annyi különbséggel, hogy a foreachben CSAKis az iterator maximális mérettõl kisebb számokat tudsz hozzáadni (pl ha létrehozol egy 100-as méretû iteratort, akkor 0 és 99 között adhatsz hozzá számokat). Ez függvény segítségével nullától nagyobb és 2,147,483,647 kisebb számokat adhattok hozzá. Természetesen a gyorsasága lassabb, hiszen teljesen más elven mûködik.
Miért ez?
Igazság szerint azoknak ajánlom ezen könyvtár használatát, akik tetszõleges számot akarnak hozzáadni az iteratorhoz. Használata természetesen majdnem ugyan az mint a Y_Less által készített foreaché, annyi különbséggel, hogy a funkciók, illetve az iteratorok elé egy \"D\" betût kell rakni. (pl Iter_Add -> DIter_Add).
Ki készítette?
 

/*
*            dforeach 1.0.0
*        All right reserved! ˆ By: DrAkE
*         Freely redistributable.
*
* Owner      : DrAkE
* Time         : 2014.07.17
*
* Thanks to   :
*         Thiadmer - PAWN.
*         SA:MP Team past, present, future - SA:MP.
*/

 
Funkciók
 

* Functions   :
*          DIterator       - Iterator létrehozása (példa: DIterator:test<10>).
*          dforeach       - Iterator értékein való végigfutás.
*          DIter_Add       - Érték hozzáadása az iteratorhoz.
*          DIter_Remove    - Érték eltávolítása az iteratorból.
*          DIter_Count    - Az iteratorban lévõ elemek megszámolása.
*          DIter_Random    - Visszatér egy tetszõleges számmal az iteratorból.
*          DIter_Contain    - Ellenõrzi hogy a megadott szám létezik-e az iteratorban.
*          DIter_Sort       - Iterator csökkenõ, illetve növekvõbe való rendezése.
*          DIter_Clear    - Iterator teljes törlése.

 
Példa használatára
 

new DIterator:teszt<5>;
public OnFilterScriptInit()
{
DIter_Add(teszt, 1);
DIter_Add(teszt, 2);
DIter_Add(teszt, 3);
DIter_Add(teszt, 4);
DIter_Add(teszt, 5);
DIter_Add(teszt, 6);
dforeach(teszt, azigen)
printf(\"Számok: %d\", azigen);
printf(\"Random: %d\", DIter_Random(teszt));
printf(\"Count: %d\", DIter_Count(teszt));
DIter_Sort(teszt, true);
dforeach(teszt, azigen)
printf(\"Sort: %d\", azigen);
DIter_Remove(teszt, 1);
dforeach(teszt, azigen)
printf(\"Törlés után: %d\", azigen);
return true;
}

 
Alap létezõ iteratorok
 

Players - Játékosokat tartalmazza
Bots - NPCket tartalmazza
Characters - Tartalmazza a játékosokat, és az NPCket

 
Letöltés
Klikk ide
Kód
 

/*
*            dforeach 1.0.0
*        All right reserved! ˆ By: DrAkE
*         Freely redistributable.
*
* Owner      : DrAkE
* Time         : 2014.07.17
*
* Thanks to   :
*         Thiadmer - PAWN.
*         SA:MP Team past, present, future - SA:MP.
*
*
* Functions   :
*          DIterator       - Create an iterator (example: DIterator:test<10>).
*          dforeach       - Loop through an iterator.
*          DIter_Add       - Add a value to the iterator.
*          DIter_Remove    - Remove a value from the iterator.
*          DIter_Count    - Count the iterator items.
*          DIter_Random    - Return a random value from the iterator.
*          DIter_Contain    - Check if a value is exists in the iterator.
*          DIter_Sort       - Sort the iterator\'s value.
*          DIter_Clear    - Clear the iterator\'s value.
*
*
* Existing iterators:
*         Players    - Contains only players
*         Bots       - Contains only bots
*         Characters    - Contains both players and bots
*/
#if defined _dfor_included
#endinput
#endif   
#define _dfor_included
#define DIteratorArray:%1<%2> %1[%2]
#define DIteratorSizeof:%1<%2> %2(%1)
#define DIteratorType:%1<%2> %2%1
#define DIteratorVariable:%1<%2> DIteratorType:%1<%2>
#define DIteratorSafeIndex:%1<%2> ((%1<0||%1>=%2)?(0):(%1))
/*
* Name   :
*      DIterator
*
* Type   :
*      Macro
*
* Return:
*      -
*
* Note   :
*      Create an iterator
*/
#define DIterator:%1<%2> DIteratorVariable:_D_ITER_%1__UTOLSO<>=0,DIteratorVariable:_D_ITER_%1__SZAMLAL<>,dIter:DIteratorVariable:_D_ITER_%1__TOMB<>[%2]={dIter:0xFFFFFFFF, ...}
/*
* Name   :
*      dforeach
*
* Type   :
*      Macro
*
* Return:
*      -
*
* Note   :
*      Loop through iterator
*/
#define dforeach(%1,%2) for(new DIteratorVariable:_D_ITER__%1__CIKLUS<>=0xFFFFFFFF,%2=DIteratorArray:_D_ITER_%1__TOMB<0>;((DIteratorVariable:_D_ITER__%1__CIKLUS<++>)<(DIteratorVariable:_D_ITER_%1__SZAMLAL<>))&&((%2=DIteratorArray:_D_ITER_%1__TOMB<(DIteratorSafeIndex:(DIteratorVariable:_D_ITER__%1__CIKLUS<>)<(DIteratorVariable:_D_ITER_%1__SZAMLAL<>)>)>)>0xFFFFFFFF);)
/*
* Name   :
*      DIter_Add (wraps DIter_AddEx)
*
* Type   :
*      Macro
*
* Return:
*      0 - if the last added value is the same
*      1 - if the given value is exists
*      2 - if the iterator is full
*      3 - if the value is added successfully
*
* Note   :
*      Add a given value to the iterator
*/
#define DIter_Add(%1,%2) DIter_AddEx(DIteratorVariable:_D_ITER_%1__TOMB<>,%2,DIteratorVariable:_D_ITER_%1__SZAMLAL<>,.last=DIteratorVariable:_D_ITER_%1__UTOLSO<>)
/*
* Name   :
*      DIter_Remove (wraps DIter_RemoveEx)
*
* Type   :
*      Macro
*
* Return:
*      0 - if the given value not exists
*      1 - if the given value successfully removed
*
* Note   :
*      Remove a given value from the iterator, if it exists
*/
#define DIter_Remove(%1,%2) DIter_RemoveEx(DIteratorVariable:_D_ITER_%1__TOMB<>,%2,DIteratorVariable:_D_ITER_%1__SZAMLAL<>,DIteratorVariable:_D_ITER_%1__UTOLSO<>,DIteratorSizeof:_D_ITER_%1__TOMB<sizeof>)
/*
* Name   :
*      DIter_Count
*
* Type   :
*      Macro
*
* Return:
*      -
*
* Note   :
*      Count the iterator\'s existing value
*/
#define DIter_Count(%1) (DIteratorVariable:_D_ITER_%1__SZAMLAL<>)
/*
* Name   :
*      DIter_Random
*
* Type   :
*      Macro
*
* Return:
*      -
*
* Note   :
*      Return a random number from the iterator
*/
#define DIter_Random(%1) ((DIteratorVariable:_D_ITER_%1__SZAMLAL<>?(_:DIteratorArray:_D_ITER_%1__TOMB<random(DIteratorVariable:_D_ITER_%1__SZAMLAL<>)>):(0xFFFFFFFF)))
/*
* Name   :
*      DIter_Contain
*
* Type   :
*      Macro
*
* Return:
*      -
*
* Note   :
*      Check if the given value is exists in the iterator
*/
#define DIter_Contain(%1,%2) (DIter_FastInArray(DIteratorVariable:_D_ITER_%1__TOMB<>,%2))
//#define DIter_SafeRemove(%1,%2) ((DIteratorArray:_D_ITER_%1__TOMB<(DIteratorVariable:_D_ITER_CIKLUS<>)>==%2?(DIteratorArray:_D_ITER_%1__TOMB<(DIteratorVariable:_D_ITER_CIKLUS<>)>=0xFFFFFFFF,DIter_Remove(%1,%2),DIteratorVariable:_D_ITER_CIKLUS<>--):(1)))
/*
* Name   :
*      DIter_Sort (wraps DIter_SortEx)
*
* Type   :
*      Macro
*
* Return:
*      -
*
* Note   :
*      Sort an iterator
*/
#define DIter_Sort(%1,%2) DIter_SortEx(DIteratorVariable:_D_ITER_%1__TOMB<>,%2,DIteratorVariable:_D_ITER_%1__SZAMLAL<>)
/*
* Name   :
*      DIter_Clear
*
* Type   :
*      Macro
*
* Return:
*      -
*
* Note   :
*      Delete the iterator\'s values
*/
#define DIter_Clear(%1) dforeach(%1,DIteratorVariable:_VALTOZO_%1__I_<>)DIteratorArray:_D_ITER_%1__TOMB<(DIteratorVariable:_D_ITER_CIKLUS<>)>=0xFFFFFFFF,DIter_Remove(%1,DIteratorVariable:_VALTOZO_%1__I_<>)
new
/*
* Name   :
*      DIterator:Players
*
* Size   :
*      MAX_PLAYERS
*
* Type   :
*      Variable
*
* Note   :
*      Create an iterator for the players
*/
DIterator:Players<MAX_PLAYERS>,
/*
* Name   :
*      DIterator:Bots
*
* Size   :
*      MAX_PLAYERS
*
* Type   :
*      Variable
*
* Note   :
*      Create an iterator for the NPCs
*/
DIterator:Bots<MAX_PLAYERS>,
/*
* Name   :
*      DIterator:Characters
*
* Size   :
*      MAX_PLAYERS
*
* Type   :
*      Variable
*
* Note   :
*      Create an iterator for the players and NPCs
*/
DIterator:Characters<MAX_PLAYERS>;
/*
* Name   :
*      DIter_SortEx
*
* Type   :
*      Function
*
* Return:
*      -
*
* Note   :
*      Sort an iterator
*/
stock
DIter_SortEx(dIter:DIteratorArray:iter<>, DIteratorType:ascendant<bool:> = true, DIteratorType:num<> = DIteratorSizeof:iter<sizeof>)
{
new DIteratorVariable:i<> = 0xFFFFFFFF,
DIteratorVariable:j<> = 0xFFFFFFFF,
DIteratorVariable:temp<> = 0xFFFFFFFF;
for(;DIteratorVariable:i<++> < DIteratorVariable:num<>;)
{
for(DIteratorVariable:<>j = (DIteratorVariable:i<> + 1); j < DIteratorVariable:num<>; DIteratorVariable:j<>++)
{
   if((DIteratorVariable:ascendant<>) ? (DIteratorArray:iter<(DIteratorVariable:i<>)> > DIteratorArray:iter<(DIteratorVariable:j<>)>) : (DIteratorArray:iter<(DIteratorVariable:i<>)> < DIteratorArray:iter<(DIteratorVariable:j<>)>))
   {
      DIteratorVariable:temp<> = DIteratorArray:iter<(DIteratorVariable:i<>)>;
      DIteratorArray:iter<(DIteratorVariable:i<>)> = DIteratorArray:iter<(DIteratorVariable:j<>)>;
      DIteratorArray:iter<(DIteratorVariable:j<>)> = dIter:DIteratorVariable:temp<>;
   }
}
}
}
/*
* Name   :
*      DIter_AddEx
*
* Type   :
*      Function
*
* Return:
*      0 - if the last added value is the same
*      1 - if the given value is exists
*      2 - if the iterator is full
*      3 - if the value is added successfully
*
* Note   :
*      Add a given value to the iterator, if it not exists
*/
stock
DIter_AddEx(dIter:DIteratorArray:iter<>, DIteratorType:value<>, DIteratorType:&count<>, DIteratorType:length<> = sizeof(iter), DIteratorType:&last<> = 0)
{
if(DIteratorType:last<> == DIteratorType:value<>)
{
return 0;
}
if(DIter_FastInArray(DIteratorType:iter<>, DIteratorType:value<>, DIteratorType:.size<> = DIteratorType:length<>))
{
return 1;
}
if((DIteratorVariable:length<> == DIteratorVariable:count<>))
{
return 2;
}
DIteratorArray:iter<_:(DIteratorVariable:count++<>)> = dIter:DIteratorType:last<> = dIter:DIteratorVariable:value<>;
return 3;
}
/*
* Name   :
*      DIter_RemoveEx
*
* Type   :
*      Function
*
* Return:
*      0 - if the given value not exists
*      1 - if the given value successfully removed
*
* Note   :
*      Remove a given value from the iterator, if it exists
*/
stock
DIter_RemoveEx(dIter:DIteratorArray:iter<>, DIteratorType:value<>, DIteratorType:&count<>, DIteratorType:&last<> = 0, length = 0xFFFFFFFF)
{
new DIteratorType:index<>;
if(!DIter_FastInArray(DIteratorType:iter<>, DIteratorType:value<>, DIteratorType:index<>, DIteratorType:length<>))
{
return false;
}
new DIteratorVariable:i<> = DIteratorType:index<>;
DIteratorArray:iter<(DIteratorVariable:i<>)> = dIter:0xFFFFFFFF;
if(DIteratorVariable:last<> == DIteratorVariable:value<>)
DIteratorVariable:last<> = 0xFFFFFFFF;
new DIteratorVariable:k<> = DIteratorVariable:i<> - 1;
for(;DIteratorVariable:k<++> < DIteratorVariable:count<> - 1;)
{
DIteratorArray:iter<(DIteratorVariable:k<>)> = DIteratorArray:iter<(DIteratorVariable:k<>) + 1>;
}
DIteratorArray:iter<(DIteratorVariable:length<> - 1)> = dIter:0xFFFFFFFF;
DIteratorVariable:count--<>;
return true;
}
/*
* Name   :
*      DIter_FastInArray
*
* Type   :
*      Function
*
* Return:
*      0 - if the given value is not exists in the iterator
*      1 - if the given value is exists in the iterator
*
* Note   :
*      Search for a given value in the iterator
*/
stock
DIter_FastInArray(dIter:DIteratorArray:iter<>, DIteratorType:elem<>, DIteratorType:&index<> = 0xFFFFFFFF, DIteratorType:size<> = sizeof(iter))
{
new DIteratorType:top<> = (size - 1);
new DIteratorType:bot<> = 0;
new DIteratorType:p<>;
while(DIteratorType:top<> >= DIteratorType:bot<>)
{
DIteratorType:p<> = floatround(((DIteratorType:top<> + DIteratorType:bot<>) / 2), floatround_floor);
if (_:DIteratorArray:iter<(DIteratorVariable:p<>)> < DIteratorType:elem<>)
{
   DIteratorType:bot<> = DIteratorType:p<> + 1;
}
else if (_:DIteratorArray:iter<(DIteratorVariable:p<>)> > DIteratorType:elem<>)
{
   DIteratorType:top<> = DIteratorType:p<> - 1;
}
else
{
   return true;
}
}
return false;
}
/*
* Name   :
*      DIter_OnFilterScriptInit
*
* Type   :
*      OnFilterScriptInit hook
*
* Return:
*      -
*
* Note   :
*      Hook the OnFilterScriptInit
*/
#if defined FILTERSCRIPT
public
OnFilterScriptInit()
{
new
   DIteratorVariable:i<> = 0xFFFFFFFF;
for(;DIteratorVariable:i<++> < MAX_PLAYERS;)
{
   if(IsPlayerConnected(DIteratorVariable:i<>))
   {
      if(IsPlayerNPC(DIteratorVariable:i<>))
      {
         DIter_Add(Bots, DIteratorVariable:i<>);
      }
      else
      {
         DIter_Add(Players, DIteratorVariable:i<>);
      }
      DIter_Add(Characters, DIteratorVariable:i<>);
   }
}
return
   CallLocalFunction(\"DIter_OnFilterScriptInit\", \"\");
}
#if defined _ALS_OnFilterScriptInit
#undef OnFilterScriptInit
#else
#define _ALS_OnFilterScriptInit
#endif
#define OnFilterScriptInit DIter_OnFilterScriptInit
forward DIter_OnFilterScriptInit();
#else
/*
* Name   :
*      DIter_OnGameModeInit
*
* Type   :
*      OnGameModeInit hook
*
* Return:
*      -
*
* Note   :
*      Hook the OnGameModeInit
*/
public
OnGameModeInit()
{
new
   DIteratorVariable:i<> = 0xFFFFFFFF;
for(;DIteratorVariable:i<++> < MAX_PLAYERS;)
{
   if(IsPlayerConnected(DIteratorVariable:i<>))
   {
      if(IsPlayerNPC(DIteratorVariable:i<>))
      {
         DIter_Add(Bots, DIteratorVariable:i<>);
      }
      else
      {
         DIter_Add(Players, DIteratorVariable:i<>);
      }
      DIter_Add(Characters, DIteratorVariable:i<>);
   }
}
return
   CallLocalFunction(\"DIter_OnGameModeInit\", \"\");
}
#if defined _ALS_OnGameModeInit
#undef OnGameModeInit
#else
#define _ALS_OnGameModeInit
#endif
#define OnGameModeInit DIter_OnGameModeInit
forward DIter_OnGameModeInit();
#endif
/*
* Name   :
*      DIter_OnPlayerConnect
*
* Type   :
*      OnPlayerConnect hook
*
* Return:
*      -
*
* Note   :
*      Hook the OnPlayerConnect
*/
public
OnPlayerConnect(playerid)
{
if(IsPlayerNPC(playerid))
{
DIter_Add(Bots, playerid);
}
else
{
DIter_Add(Players, playerid);
}
DIter_Add(Characters, playerid);
return
CallLocalFunction(\"DIter_OnPlayerConnect\", \"d\", playerid);
}
#if defined _ALS_OnPlayerConnect
#undef OnPlayerConnect
#else
#define _ALS_OnPlayerConnect
#endif
#define OnPlayerConnect DIter_OnPlayerConnect
forward DIter_OnPlayerConnect(playerid);
/*
* Name   :
*      DIter_OnPlayerDisconnect
*
* Type   :
*      OnPlayerDisconnect hook
*
* Return:
*      -
*
* Note   :
*      Hook the OnPlayerDisconnect
*/
public
OnPlayerDisconnect(playerid, reason)
{
if(IsPlayerNPC(playerid))
{
DIter_Remove(Bots, playerid);
}
else
{
DIter_Remove(Players, playerid);
}
DIter_Remove(Characters, playerid);
return
CallLocalFunction(\"DIter_OnPlayerDisconnect\", \"dd\", playerid, reason);
}
#if defined _ALS_OnPlayerDisconnect
#undef OnPlayerDisconnect
#else
#define _ALS_OnPlayerDisconnect
#endif
#define OnPlayerDisconnect DIter_OnPlayerDisconnect
forward DIter_OnPlayerDisconnect(playerid, reason);

10
Maybe?
 

stock
bool:valstr_ex(tomb[], valtozo)
{
new
temp[12];
format(temp, sizeof temp, \"%c\", valtozo);
return (strfind(tomb, temp, false) != -1);
}
new tomb[10] = {5, 1, 9, 10, 25};
new valtozo = 26;
if(valstr_ex(tomb, valtozo))
printf(\"Benne van!\");

11
Segítségkérés / Dinamikus Checkpoint
« Dátum: 2013. Június 21. - 23:36:08 »
Sziasztok!
Egy ritka nagy problémában szenvedek, amit már nem nagyon tudok megoldani, és a tapasztaltabbaktól kérek segítséget (aki már tapasztalta, és ért is hozzá). Az lenne a gond, hogy a Dinamikus Checkpointok (Incognito Streamer) elbugolnak. Ha a játékos csatlakozik a szerverre, random néha kidob egy checkpointot, mikor azok mindegyike törölve vannak Disconnectnél, plusz néha nem is érzékeli a checkpointokat. Néha elõfordul, hogy más helyre rakja a checkpointokat. (Megjegyzem, hogy az összes checkpointot playerid-re korlátozom).
Csak azoktól kérek válaszokat, akik már tapasztaltak ilyet, és tudták is orvosolni!

12
Csak szólok, hogy profi scripter ezen a fórumon nagyon kevés van. És ha van is, az már nem scripter, vagy ha igen saját szervere van, vagy ha nincs is nem hiszem hogy adminért hozzátok fog csatlakozni.

13
Fórum Archívum (Témák/Fórumok) / Re:Stunt/Drift/Drag/Dm Gamemode
« Dátum: 2013. Január 18. - 17:13:41 »
Nem hát, elég beírni a kódodat a google-re azt pont ugyan olyan kódok jönnek ki.

14
SA-MP: Szerverfejlesztés / daused - Szüneteltetés észlelése
« Dátum: 2013. Január 01. - 20:02:37 »
Üdvözlök mindenkit.
Még régebben írtam egy olyan függvénykönyvtárat, ami érzékeli, hogy ha a játékos ESC-et nyom, esetleg lerakja tálcára.
Most jön az a kérdés, mivel is jobb ez, mint akármelyik más ugyan ilyen script. Nos a válasz egyszerû. Míg a többi scriptnél, ha egy helyben állsz esetleg mozogsz elõfordul az, hogy akkor is úgy érzékeli, hogy szünetelteted a játékot, ez addig tökéletesen észleli, hogy ha ESC-et nyomsz, lerakod a tálcára, esetleg alkalmazást váltasz.
Kettõ darab eljárása (callback-je) van:
 
  • OnPlayerPause(playerid)

  • OnPlayerUnPause(playerid)


Ezen felül rendelkezik egy darab függvénnyel is:
 
  • IsPlayerPaused(playerid)

De nézzünk is rá egy példát:
 

#include <a_samp>
#define FILTERSCRIPT //FIGYELEM! FONTOS MEGJEGYEZNI, HOGY HA FILTERSCRIPTBEN ALKALMAZOD EZ DEFINIÁLVA LEGYEN!
#include <daused>
public OnFilterScriptInit()
{
print(\"A FilterScript betöltve!\");
return true;
}
public OnFilterScriptExit()
{
print(\"A FilterScript ki lett véve!\");
return true;
}
public OnPlayerPause(playerid)
{
SendClientMessage(playerid, -1, \"Éppen szünetelteted a játékot!\");
return true;
}
public OnPlayerUnPause(playerid)
{
SendClientMessage(playerid, -1, \"Már nem szünetelteti a játékot!\");
return true;
}

 
Letöltés:
PasteBin
FIGYELEM! Ha filterscriptben használod, akkor a következõképp használd:
 

#define FILTERSCRIPT
#include <daused>

15
SA-MP: Szerverfejlesztés / uDate - v0.3
« Dátum: 2012. December 25. - 22:53:00 »
Üdvözletem!
Szeretném bemutatni a nem rég készült kódot. Szerintem sokunknál volt úgy, hogy a híres Unix idõt szeretnénk átváltani dátumba, habár ez nem volt lehetséges, ugyanis a SA-MP nem biztosított számunkra ilyen funkciót. Ez a kód a célt szolgál, hogy a Unix idõt (másodpercet), visszakapjuk dátumként.
De nézzük is meg használat közben:
 

new
time = gettime(),
y, mo, d, h, mi, s
;
printf(\"Unix: %d\", time);
uDate(time, y, mo, d, h, mi, s);
printf(\"%d|%d|%d|%d|%d|%d|\", y, mo, d, h, mi, s);

 
Ami az alábbi szöveget fogja ki írni:
 

[22:44:12] Unix: 1356471852
[22:44:12] 2012|12|25|22|44|12|

 
Ha esetleges bugokat találtok, akkor azt legyetek szívesek ebben a témában, vagy privát üzenetben jelezni!
v0.3: Támogatja az óra, és perc eltolódást!
Eltolódásra példa:
 

new
time = gettime(),
y, mo, d, h, mi, s
;
printf(\"Unix: %d\", time);
uDate(time, y, mo, d, h, mi, s, 1, 30); //eltoljuk az idõt 1:30 órával
printf(\"%d|%d|%d|%d|%d|%d|\", y, mo, d, h, mi, s);

 
Letöltés:
http://pastebin.com/Lzrt8jrZ

Oldalak: [1] 2 3 4
SimplePortal 2.3.7 © 2008-2024, SimplePortal