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.
Üzenetek - Hankok
16
« Dátum: 2013. október 22. - 20:25:05 »
most pl lementek 1 kordinátát ls-be és ha most el szeretnék teleportálni lsbe akkor csak ugyanugy bekéne ütnöm a nevét csak 1 / jelet kéne eléje tennem? [/quote] lényegében igen.
17
« Dátum: 2013. október 05. - 21:00:00 »
Sziasztok!
Amikor le copmlizom a Zamaroth TextDraw editor-t akkor nekem ezeket a hibákat adja le:
D:\\szerverek\\[HUN]Need For Speed szerver\\filterscripts\\TextDrawEditor1.0.pwn(3140) : error 021: symbol already defined: \"StripNewLine\" D:\\szerverek\\[HUN]Need For Speed szerver\\filterscripts\\TextDrawEditor1.0.pwn(3155) : error 021: symbol already defined: \"fcopytextfile\" D:\\szerverek\\[HUN]Need For Speed szerver\\filterscripts\\TextDrawEditor1.0.pwn(3208) : error 021: symbol already defined: \"HexToInt\" Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase 3 Errors. ez miért van valaki nem tudja, köszönöm szépen elõre is a segítséget!
18
« Dátum: 2013. október 03. - 19:50:38 »
cucc
19
« Dátum: 2013. szeptember 30. - 15:10:48 »
megtudnád nekem csinálni, 1 fs formájába?
20
« Dátum: 2013. szeptember 30. - 14:43:28 »
kösz, kösz, ez meg is lenne, ha a regisztrációt megtalálnám, nem találom, ezért nem tom h mit csináljak :// xD
Dupla hozzászólás automatikusan összefûzve. ( 2013. szeptember 30. - 14:56:34 ) sikerült megcsinálni, 1 gond van már csak vele, nem lehetne úgy megcsinálni, hogy pl 5 másodpercig mutatja a képet? úgy kellene ...
21
« Dátum: 2013. szeptember 29. - 20:43:01 »
22
« Dátum: 2013. szeptember 29. - 17:43:47 »
H tudok olyan képet berakni a samp szerveremre mint pl mielõtt le spawnol 1 player azelõtt legyen 1 kép.
23
« Dátum: 2013. szeptember 29. - 15:19:33 »
videót, képet tegyél pls...
24
« Dátum: 2013. szeptember 28. - 12:32:45 »
Hivatalos fórumról hozott scriptekhez rakd! Egyébként köszönjük Ja + valahova ezt szúrd be : #pragma tabsize 0 Így a 6warning 0lesz nekem a pragma nélkül is simán ment.
25
« Dátum: 2013. szeptember 28. - 12:15:31 »
Sziasztok!
Elhoztam egy filterscriptet az angol fórumról, neve Hay Mningame
Eredeti készítõ :ScRaT
Eredeti Téma :
http://forum.sa-mp.com/showthread.php?t=394465 Eredeti Videó :
VIDEO Én csak annyit edilteltem rajta h amit tudtam lefordítottam, és kijavítottam néhány buggot.
scriptet letöltheted innen :
http://data.hu/get/6976242/haym.pwn Vagy innen:
//includes #include <a_samp> //defines #define ConvertTime(%0,%1,%2,%3,%4) \\ new \\ Float: %0 = floatdiv(%1, 60000) \\ ;\\ %2 = floatround(%0, floatround_tozero); \\ %3 = floatround(floatmul(%0 - %2, 60), floatround_tozero); \\ %4 = floatround(floatmul(floatmul(%0 - %2, 60) - %3, 1000), floatround_tozero) #define ORANGE 0xDB881AAA #define HAY_X 4 #define HAY_Y 4 #define HAY_Z 30 #define HAY_B 146 #define HAY_R 4 #define SPEED_FACTOR 3000.0 #define ID_HAY_OBJECT 3374 //forwards forward TimerMove (); forward TimerScore (); forward FinishTimer (id, xq, yq, zq); forward TDScore (); //news new JoinedHay[MAX_PLAYERS] = -1; new WhatLevel[MAX_PLAYERS] = -1; new TimeInHay[MAX_PLAYERS]; new Speed_xy; new Speed_z; new Center_x; new Center_y; new Matrix[HAY_X][HAY_Y][HAY_Z]; new Hays[HAY_B]; new Text:HAYTD[MAX_PLAYERS]; //publics/stocks public OnGameModeInit() { print(\"\\n--------------------------------------\"); print(\" Hay Minigame By ScRaT\"); print(\"--------------------------------------\\n\"); RestartEveryThing (); for(new i=0; i<MAX_PLAYERS; i++) { HAYTD = TextDrawCreate(549.000000,397.000000,\"~h~~y~Hay Minigame~n~~r~Szint: ~w~0/31 ~n~~r~Idõ: ~w~00:00:00\"); TextDrawFont(HAYTD , 1); TextDrawSetProportional(HAYTD, 1); TextDrawSetOutline(HAYTD, 0); TextDrawColor(HAYTD,-65281); TextDrawLetterSize(HAYTD ,0.310000,1.400000); TextDrawTextSize(HAYTD , 640.000000,0.000000); TextDrawAlignment(HAYTD,1); TextDrawSetShadow(HAYTD, 0); TextDrawUseBox(HAYTD, 1); TextDrawBoxColor(HAYTD, 255); TextDrawBackgroundColor(HAYTD, 255); } return 1; } public OnFilterScriptExit() { return 1; } public OnPlayerRequestClass(playerid, classid) { TextDrawHideForPlayer(playerid,HAYTD[playerid]); JoinedHay[playerid] = 0; return 1; } public OnPlayerConnect(playerid) { WhatLevel[playerid] = 0; JoinedHay[playerid] = 0; TextDrawHideForPlayer(playerid,HAYTD[playerid]); return 1; } public OnPlayerDisconnect(playerid, reason) { TextDrawHideForPlayer(playerid,HAYTD[playerid]); return 1; } public OnPlayerSpawn(playerid) { JoinedHay[playerid] = 0; SetPlayerWorldBounds(playerid, 20000.0000, -20000.0000, 20000.0000, -20000.0000); TextDrawHideForPlayer(playerid,HAYTD[playerid]); return 1; } public OnPlayerDeath(playerid, killerid, reason) { TextDrawHideForPlayer(playerid,HAYTD[playerid]); JoinedHay[playerid] = 0; return 1; } public OnPlayerCommandText(playerid, cmdtext[]) { if (strcmp(\"/hay\", cmdtext, true, 10) == 0) { if(JoinedHay[playerid] == 0) { JoinedHay[playerid] = 1; SetPlayerWorldBounds(playerid, 116.7788, -70.06725, 105.1009, -116.7788); TimeInHay[playerid] = GetTickCount(); SetPlayerPos(playerid, 0, 6.5, 3.2); SetPlayerFacingAngle( playerid, 135 ); SetPlayerVirtualWorld(playerid, 50); ResetPlayerWeapons(playerid); return 1; } if(JoinedHay[playerid] == 1) { JoinedHay[playerid] = 0; SetPlayerWorldBounds(playerid, 20000.0000, -20000.0000, 20000.0000, -20000.0000); SetPlayerVirtualWorld(playerid, 0); TextDrawHideForPlayer(playerid,HAYTD[playerid]); SpawnPlayer(playerid); return 1; } return 1; } return 0; } RestartEveryThing () { new xq, yq, zq; new Number; Speed_xy = 2000 / (HAY_Z + 1); Speed_z = 1500 / (HAY_Z + 1); for (new i=0 ; i<MAX_PLAYERS ; i++) { if (IsPlayerConnected (i)) { WhatLevel = 0; } } for (xq=0 ; xq<HAY_X ; xq++) { for (yq=0 ; yq<HAY_Y ; yq++) { for (zq=0 ; zq<HAY_Z ; zq++) { Matrix[xq][yq][zq] = 0; } } } for (Number=0 ; Number<HAY_B ; Number++) { do { xq = random (HAY_X); yq = random (HAY_Y); zq = random (HAY_Z); } while (Matrix[xq][yq][zq] != 0); Matrix[xq][yq][zq] = 1; Hays[Number] = CreateObject (ID_HAY_OBJECT, xq*(-4), yq*(-4), (zq+1)*3, 0.0, 0.0, random (2)*180,50); } Center_x = (HAY_X + 1) * -2; Center_y = (HAY_Y + 1) * -2; CreateObject (ID_HAY_OBJECT, Center_x, Center_y, HAY_Z*3 + 3, 0, 0, 0,50); SetTimer (\"TimerMove\", 100, 0); SetTimer (\"TDScore\", 1000, 1); } public TimerMove () { new rand; new Hay; new Move = -1; new xq, yq, zq; new Float:x2, Float:y2, Float:z2; new Timez; new Float:Speed; rand = random (HAY_B); Hay = Hays[rand]; if(IsObjectMoving(Hay)) { SetTimer (\"TimerMove\", 200, 0); return 1; } Move = random (6); GetObjectPos (Hay, x2, y2, z2); xq = floatround (x2/-4.0); yq = floatround (y2/-4.0); zq = floatround (z2/3.0)-1; if ((Move == 0) && (xq != 0) && (Matrix[xq-1][yq][zq] == 0)) { Timez = 4000 - Speed_xy * zq; Speed = SPEED_FACTOR / float (Timez); SetTimerEx (\"FinishTimer\", Timez, 0, \"iiii\", rand, xq, yq, zq); xq = xq - 1; Matrix[xq][yq][zq] = 1; MoveObject (Hay, x2+4.0, y2, z2, Speed); } else if ((Move == 1) && (xq != HAY_X-1) && (Matrix[xq+1][yq][zq] == 0)) { Timez = 4000 - Speed_xy * zq; Speed = SPEED_FACTOR / float (Timez); SetTimerEx (\"FinishTimer\", Timez, 0, \"iiii\", rand, xq, yq, zq); xq = xq + 1; Matrix[xq][yq][zq] = 1; MoveObject (Hay, x2-4.0, y2, z2, Speed); } else if ((Move == 2) && (yq != 0) && (Matrix[xq][yq-1][zq] == 0)) { Timez = 4000 - Speed_xy * zq; Speed = SPEED_FACTOR / float (Timez); SetTimerEx (\"FinishTimer\", Timez, 0, \"iiii\", rand, xq, yq, zq); yq = yq - 1; Matrix[xq][yq][zq] = 1; MoveObject (Hay, x2, y2+4.0, z2, Speed); } else if ((Move == 3) && (yq != HAY_Y-1) && (Matrix[xq][yq+1][zq] == 0)) { Timez = 4000 - Speed_xy * zq; Speed = SPEED_FACTOR / float (Timez); SetTimerEx (\"FinishTimer\", Timez, 0, \"iiii\", rand, xq, yq, zq); yq = yq + 1; Matrix[xq][yq][zq] = 1; MoveObject (Hay, x2, y2-4.0, z2, Speed); } else if ((Move == 4) && (zq != 0) && (Matrix[xq][yq][zq-1] == 0)) { Timez = 3000 - Speed_z * zq; Speed = SPEED_FACTOR / float (Timez); SetTimerEx (\"FinishTimer\", Timez, 0, \"iiii\", rand, xq, yq, zq); zq = zq - 1; Matrix[xq][yq][zq] = 1; MoveObject (Hay, x2, y2, z2-3.0, Speed); } else if ((Move == 5) && (zq != HAY_Z-1) && (Matrix[xq][yq][zq+1] == 0)) { Timez = 3000 - Speed_z * zq; Speed = SPEED_FACTOR / float (Timez); SetTimerEx (\"FinishTimer\", Timez, 0, \"iiii\", rand, xq, yq, zq); zq = zq + 1; Matrix[xq][yq][zq] = 1; MoveObject (Hay, x2, y2, z2+3.0, Speed); } else if ((Move == 6) && (zq != HAY_Z-1) && (Matrix[xq][yq][zq+1] == 0)) { Timez = 3000 - Speed_z * zq; Speed = SPEED_FACTOR / float (Timez); SetTimerEx (\"FinishTimer\", Timez, 0, \"iiii\", rand, xq, yq, zq); zq = zq + 1; Matrix[xq][yq][zq] = 1; MoveObject (Hay, x2, y2, z2+3.0, Speed); } SetTimer (\"TimerMove\", 200, 0); return 1; } //============================================================================== public FinishTimer (id, xq, yq, zq) { Matrix[xq][yq][zq] = 0; } //============================================================================== public TimerScore () { new Float:xq, Float:yq, Float:zq; for (new i=0 ; i<MAX_PLAYERS ; i++) { if (IsPlayerConnected (i)) { GetPlayerPos (i, xq, yq, zq); if (xq<=2.0 && xq>=-15.0 && yq<=2.0 && yq>=-15.0) { new Level = (floatround (zq)/3) - 1; WhatLevel = Level; } else { WhatLevel = 0; } } } } public TDScore() { TimerScore(); new Level,string[256],PlayerN[MAX_PLAYER_NAME]; for(new i=0; i<MAX_PLAYERS; i++) { if(IsPlayerConnected(i)) { if(JoinedHay == 1) { new tH,tM,tS; new TimeStamp = GetTickCount(); new TotalRaceTime = TimeStamp - TimeInHay; ConvertTime(var, TotalRaceTime, tH, tM, tS); Level = WhatLevel; format(string,sizeof(string),\"~h~~y~Hay Minigame~n~~r~Szint: ~w~%d/31 ~n~~r~Ido: ~w~%02d:%02d\\ \",Level,tH,tM,tS); TextDrawSetString(HAYTD, string); TextDrawShowForPlayer(i, HAYTD); if(WhatLevel == 31) { GetPlayerName(i, PlayerN, sizeof(PlayerN)); format(string, sizeof(string),\"[MINIGAME] %s Sikeresen végig játszottad a minigame-t %02d perc %02d másodperc alatt\", PlayerN,tH,tM,tS); SendClientMessageToAll(ORANGE,string); TextDrawHideForPlayer(i, HAYTD); SetPlayerPos(i,0,0,0); SpawnPlayer(i); } } if(JoinedHay != 1) { TextDrawHideForPlayer(i, HAYTD); } } } return 1; }
26
« Dátum: 2013. szeptember 28. - 12:09:56 »
szép
27
« Dátum: 2013. szeptember 26. - 20:32:50 »
mûxik, köszi szépen, vegyél fel skypen légyszíves: szucs.janos14
KÖSZI még 1x
28
« Dátum: 2013. szeptember 26. - 19:34:26 »
jah...
29
« Dátum: 2013. szeptember 26. - 19:12:03 »
megpróbálom.
Dupla hozzászólás automatikusan összefûzve. ( 2013. szeptember 26. - 19:19:37 ) nem jó.
30
« Dátum: 2013. szeptember 26. - 18:00:20 »
A képet a Képfeltöltés.hu tárolja.
http://www.kepfeltoltes.hu valaki nem tudja h ezt miért írja?
Pawno script :
// [FS]Property-System by =>Sandra<= // Magyarosítást és kisebb átalakításokat készítette: Adamo(adams94) #include <a_samp> #include <dini> #define MAX_PROPERTIES 100 #define MAX_PROPERTIES_PER_PLAYER 4 #define UNBUYABLETIME 15 #define ENABLE_LOGIN_SYSTEM 1 #define ENABLE_MAP_ICON_STREAMER 1 #define REGISTER_COMMAND \"/register\" #define LOGIN_COMMAND \"/login\" new PropertiesAmount; new MP; enum propinfo { PropName[64], Float:PropX, Float:PropY, Float:PropZ, PropIsBought, PropUnbuyableTime, PropOwner[MAX_PLAYER_NAME], PropValue, PropEarning, PickupNr, } new PropInfo[MAX_PROPERTIES][propinfo]; new PlayerProps[MAX_PLAYERS]; new EarningsForPlayer[MAX_PLAYERS]; new Logged[MAX_PLAYERS]; public OnFilterScriptInit() { LoadProperties(); MP = GetMaxPlayers(); for(new i; i<MP; i++) { if(IsPlayerConnected(i)) { new pName[MAX_PLAYER_NAME]; GetPlayerName(i, pName, MAX_PLAYER_NAME); for(new propid; propid < PropertiesAmount; propid++) { if(PropInfo[propid][PropIsBought] == 1) { if(strcmp(PropInfo[propid][PropOwner], pName, true)==0) { EarningsForPlayer += PropInfo[propid][PropEarning]; PlayerProps++; } } } } } SetTimer(\"UpdateUnbuyableTime\", 60000, 1); #if ENABLE_MAP_ICON_STREAMER == 1 SetTimer(\"MapIconStreamer\", 500, 1); #endif SetTimer(\"PropertyPayout\", 60000, 1); return 1; } public OnFilterScriptExit() { SaveProperties(); return 1; } public OnPlayerConnect(playerid) { PlayerProps[playerid] = 0; Logged[playerid] = 0; EarningsForPlayer[playerid] = 0; new pName[MAX_PLAYER_NAME]; GetPlayerName(playerid, pName, MAX_PLAYER_NAME); for(new propid; propid < PropertiesAmount; propid++) { if(PropInfo[propid][PropIsBought] == 1) { if(strcmp(PropInfo[propid][PropOwner], pName, true)==0) { EarningsForPlayer[playerid] += PropInfo[propid][PropEarning]; PlayerProps[playerid]++; } } } #if ENABLE_LOGIN_SYSTEM == 0 if(PlayerProps[playerid] > 0) { new str[128]; format(str, 128, \"Van %d házad. /myh ezzel a parancsal megnézheted.\", PlayerProps[playerid]); SendClientMessage(playerid, 0x99FF66AA, str); } #endif return 1; } public OnPlayerDisconnect(playerid, reason) { return 1; } public OnPlayerText(playerid, text[]) { return 1; } public OnPlayerCommandText(playerid, cmdtext[]) { new cmd[256], idx, tmp[256]; cmd = strtok(cmdtext, idx); //------------------------------------------------------------------------------ if(strcmp(cmd, \"/helphouse\", true)==0 || strcmp(cmd, \"/helph\", true)==0) { SendClientMessage(playerid, 0xFFFF00AA, \"|=========================================================|\"); new str[128]; #if ENABLE_LOGIN_SYSTEM == 1 format(str, 128, \"%s - Regisztráció, hogy legyenek saját házaid.\", REGISTER_COMMAND); SendClientMessage(playerid, 0x66CCFFAA, str); format(str, 128, \"%s - Bejelentkezés.\", LOGIN_COMMAND); SendClientMessage(playerid, 0x66CCFFAA, str); #endif SendClientMessage(playerid, 0x33AA33AA, \"/buyhouse, /buyh - Házvásárlás.\"); SendClientMessage(playerid, 0x33AA33AA, \"/sellhouse, /sellh - Házeladás.\"); SendClientMessage(playerid, 0x33AA33AA, \"/myhouse, /myh - Házaid megtekintése.\"); // if(IsPlayerAdmin(playerid)) // { // SendClientMessage(playerid, 0x66CCFFAA, \"/sellallproperties [Admin Only] ==>> To sell all properties for all players\"); // } SendClientMessage(playerid, 0xFFFF00AA, \"|=========================================================|\"); return 1; } //------------------------------------------------------------------------------ if(strcmp(cmd, \"/buyhouse\", true)==0 || strcmp(cmd, \"/buyh\", true)==0) { new str[128]; #if ENABLE_LOGIN_SYSTEM == 1 if(Logged[playerid] == 0) { format(str, 128, \"Elöbb jelentkezbe: %s\", LOGIN_COMMAND); SendClientMessage(playerid, 0xFF0000AA, str); return 1; } #endif new propid = IsPlayerNearProperty(playerid); if(propid == -1) { SendClientMessage(playerid, 0xFF0000AA, \"Nincs ház a közelben!\"); return 1; } if(PlayerProps[playerid] == MAX_PROPERTIES_PER_PLAYER) { format(str, 128, \"Neked már van %d házad, nem tudsz többet venni!!\", PlayerProps[playerid]); SendClientMessage(playerid, 0xFF0000AA, str); return 1; } if(PropInfo[propid][PropIsBought] == 1) { new ownerid = GetPlayerID(PropInfo[propid][PropOwner]); if(ownerid == playerid) { SendClientMessage(playerid, 0xFF0000AA, \"Ez a ház már a tied!\"); return 1; } else { if(PropInfo[propid][PropUnbuyableTime] > 0) { format(str, 128, \"Ez a ház %s tulajdona!. Várj %d percet és elárverezik!\", PropInfo[propid][PropOwner], PropInfo[propid][PropUnbuyableTime]); SendClientMessage(playerid, 0xFF0000AA, str); return 1; } } } if(GetPlayerMoney(playerid) < PropInfo[propid][PropValue]) { format(str, 128, \"Nincs elég pénzed!(%d$ szükséges!)\", PropInfo[propid][PropValue]); SendClientMessage(playerid, 0xFF0000AA, str); return 1; } new pName[MAX_PLAYER_NAME]; GetPlayerName(playerid, pName, sizeof(pName)); if(PropInfo[propid][PropIsBought] && PropInfo[propid][PropUnbuyableTime] == 0) { new ownerid = GetPlayerID(PropInfo[propid][PropOwner]); format(str, 128, \"%s megvette a házad! \\\"%s\\\". Te 50százalék részvényt kaptál!(%d$)\", pName, PropInfo[propid][PropName], (PropInfo[propid][PropValue]/2)); GivePlayerMoney(ownerid, (PropInfo[propid][PropValue]/2)); SendClientMessage(ownerid, 0xFFFF00AA, str); PlayerProps[ownerid]--; } PropInfo[propid][PropOwner] = pName; PropInfo[propid][PropIsBought] = 1; PropInfo[propid][PropUnbuyableTime] = UNBUYABLETIME; EarningsForPlayer[playerid] += PropInfo[propid][PropEarning]; GivePlayerMoney(playerid, (0-PropInfo[propid][PropValue])); format(str, 128, \"Megvetted ezt a házat: \\\"%s\\\".Ennyiért: %d$.\", PropInfo[propid][PropName], PropInfo[propid][PropValue]); SendClientMessage(playerid, 0xFFFF00AA, str); format(str, 128, \"%s megvette ezt a házat: \\\"%s\\\".\", pName, PropInfo[propid][PropName]); SendClientMessageToAllEx(playerid, 0xFFFF00AA, str); PlayerProps[playerid]++; return 1; } //------------------------------------------------------------------------------ if(strcmp(cmd, \"/sellhouse\", true) == 0 || strcmp(cmd, \"/sellh\", true) == 0) { new str[128]; #if ENABLE_LOGIN_SYSTEM == 1 if(Logged[playerid] == 0) { format(str, 128, \"Elöbb jelentkezbe: %s\", LOGIN_COMMAND); SendClientMessage(playerid, 0xFF0000AA, str); return 1; } #endif new propid = IsPlayerNearProperty(playerid); if(propid == -1) { SendClientMessage(playerid, 0xFF0000AA, \"Nincs ház a közelben!\"); return 1; } if(PropInfo[propid][PropIsBought] == 1) { new ownerid = GetPlayerID(PropInfo[propid][PropOwner]); if(ownerid != playerid) { SendClientMessage(playerid, 0xFF0000AA, \"Ez a ház nem a tied!\"); return 1; } } new pName[MAX_PLAYER_NAME]; GetPlayerName(playerid, pName, sizeof(pName)); format(PropInfo[propid][PropOwner], MAX_PLAYER_NAME, \"Nobody\"); PropInfo[propid][PropIsBought] = 0; PropInfo[propid][PropUnbuyableTime] = 0; GivePlayerMoney(playerid, (PropInfo[propid][PropValue]/2)); format(str, 128, \"Eladtad ezt a házad: \\\"%s\\\", ennyiért: %d$\", PropInfo[propid][PropName], PropInfo[propid][PropValue]/2); SendClientMessage(playerid, 0xFFFF00AA, str); format(str, 128, \"%s eladta ezt a házat: \\\"%s\\\".\", pName, PropInfo[propid][PropName]); SendClientMessageToAllEx(playerid, 0xFFFF00AA, str); PlayerProps[playerid]--; EarningsForPlayer[playerid] -= PropInfo[propid][PropEarning]; return 1; } //------------------------------------------------------------------------------ if(strcmp(cmd, \"/myhouse\", true) == 0 || strcmp(cmd, \"/myh\", true) == 0) { new str[128], ownerid; #if ENABLE_LOGIN_SYSTEM == 1 if(Logged[playerid] == 0) { format(str, 128, \"Elöbb jelentkezbe: %s\", LOGIN_COMMAND); SendClientMessage(playerid, 0xFF0000AA, str); return 1; } #endif if(PlayerProps[playerid] == 0) { SendClientMessage(playerid, 0xFF0000AA, \"Nincs házad!\"); return 1; } format(str, 128, \"|================ Van %d házad: =================|\", PlayerProps[playerid]); SendClientMessage(playerid, 0x99FF66AA, str); for(new propid; propid < PropertiesAmount; propid++) { if(PropInfo[propid][PropIsBought] == 1) { ownerid = GetPlayerID(PropInfo[propid][PropOwner]); if(ownerid == playerid) { format(str, 128, \"Neve: \\\"%s\\\" Értéke: %d$ Bevétel: %d$\", PropInfo[propid][PropName], PropInfo[propid][PropValue], PropInfo[propid][PropEarning]); SendClientMessage(playerid, 0x99FF66AA, str); } } } SendClientMessage(playerid, 0x99FF66AA, \"|============================================|\"); return 1; } //------------------------------------------------------------------------------ #if ENABLE_LOGIN_SYSTEM == 1 if(strcmp(cmd, REGISTER_COMMAND, true) == 0) { new str[128]; if(Logged[playerid] == 1) return SendClientMessage(playerid, 0xFF0000AA, \"Te már bevagy jelentkezve!\"); tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { format(str, 128, \"%s <jelszó>\", REGISTER_COMMAND); SendClientMessage(playerid, 0xAFAFAFAA, str); return 1; } // if(strlen(tmp) < 5) return SendClientMessage(playerid, 0xFF9966AA, \"Password too short! At least 5 characters.\"); // if(strlen(tmp) > 20) return SendClientMessage(playerid, 0xFF9966AA, \"Password too long! Max 20 characters.\"); new pName[MAX_PLAYER_NAME], pass; GetPlayerName(playerid, pName, MAX_PLAYER_NAME); pass = dini_Int(\"PropertySystem/PlayerAccounts.txt\", pName); if(pass == 0) { dini_IntSet(\"PropertySystem/PlayerAccounts.txt\", pName, encodepass(tmp)); Logged[playerid] = 1; format(str, 128, \"Regisztráltál!. Mikor ujra jösz: \\\"%s %s\\\"\", LOGIN_COMMAND, tmp); SendClientMessage(playerid, 0x99FF66AA, str); } else { format(str, 128, \"Ez a név már regisztrált!\"); SendClientMessage(playerid, 0xFF9966AA, str); } return 1; } //------------------------------------------------------------------------------ if(strcmp(cmd, LOGIN_COMMAND, true) == 0) { new str[128]; if(Logged[playerid] == 1) return SendClientMessage(playerid, 0xFF0000AA, \"Te már bevagy jelentkezve!\"); tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { format(str, 128, \"%s <jelszó>\", LOGIN_COMMAND); SendClientMessage(playerid, 0xAFAFAFAA, str); return 1; } new pName[MAX_PLAYER_NAME], pass; GetPlayerName(playerid, pName, MAX_PLAYER_NAME); pass = dini_Int(\"PropertySystem/PlayerAccounts.txt\", pName); if(pass == 0) { format(str, 128, \"Te még nem regisztráltál! Regisztrálj: %s\", REGISTER_COMMAND); SendClientMessage(playerid, 0xFF0000AA, str); } else { if(pass == encodepass(tmp)) { Logged[playerid] = 1; SendClientMessage(playerid, 0x99FF66AA, \"Bejelentkeztél! Tudsz házat venni és eladni!\"); } else { SendClientMessage(playerid, 0xFF0000AA, \"Hibás jelszó!\"); } } #if ENABLE_LOGIN_SYSTEM == 1 if(PlayerProps[playerid] > 0) { format(str, 128, \"Van %d házad. /myh ezzel a parancsal megnézheted.\", PlayerProps[playerid]); SendClientMessage(playerid, 0x99FF66AA, str); } #endif return 1; } #endif //------------------------------------------------------------------------------ if(strcmp(cmd, \"/sellallproperties\", true)==0) { // if(IsPlayerAdmin(playerid)) // { for(new propid; propid<PropertiesAmount; propid++) { format(PropInfo[propid][PropOwner], MAX_PLAYER_NAME, \"Nobody\"); PropInfo[propid][PropIsBought] = 0; PropInfo[propid][PropUnbuyableTime] = 0; } for(new i; i<MAX_PLAYERS; i++) { if(IsPlayerConnected(i)) { PlayerProps = 0; } } new str[128], pName[24]; GetPlayerName(playerid, pName, 24); format(str, 128, \"Az admin: %s eldata az összes házat!\", pName); SendClientMessageToAll(0xFFCC66AA, str); // } return 1; } return 0; } //------------------------------------------------------------------------------ //------------------------------------------------------------------------------ public OnPlayerPickUpPickup(playerid, pickupid) { new propid = -1; for(new id; id<MAX_PROPERTIES; id++) { if(PropInfo[id][PickupNr] == pickupid) { propid = id; break; } } if(propid != -1) { new str[128]; format(str, 128, \"~g~\\\"%s\\\"~n~~r~\'Ara: ~y~%d$~n~~r~Kereset: ~y~%d$~n~~r~Tulajdonos: ~y~%s ~n~~w~(~y~nobody~w~ = senki)\", PropInfo[propid][PropName], PropInfo[propid][PropValue], PropInfo[propid][PropEarning], PropInfo[propid][PropOwner]); GameTextForPlayer(playerid, str, 6000, 3); } return 1; } stock LoadProperties() { if(fexist(\"PropertySystem/PropertyInfo.txt\")) { CountProperties(); new Argument[9][70]; new entry[256], BoughtProps; new File: propfile = fopen(\"PropertySystem/PropertyInfo.txt\", io_read); if (propfile) { for(new id; id<PropertiesAmount; id++) { fread(propfile, entry); split(entry, Argument, \',\'); format(PropInfo[id][PropName], 64, \"%s\", Argument[0]); PropInfo[id][PropX] = floatstr(Argument[1]); PropInfo[id][PropY] = floatstr(Argument[2]); PropInfo[id][PropZ] = floatstr(Argument[3]); PropInfo[id][PropValue] = strval(Argument[4]); PropInfo[id][PropEarning] = strval(Argument[5]); format(PropInfo[id][PropOwner], MAX_PLAYER_NAME, \"%s\", Argument[6]); PropInfo[id][PropIsBought] = strval(Argument[7]); PropInfo[id][PropUnbuyableTime] = strval(Argument[8]); PropInfo[id][PickupNr] = CreatePickup(1273, 1, PropInfo[id][PropX], PropInfo[id][PropY], PropInfo[id][PropZ]); if(PropInfo[id][PropIsBought] == 1) { BoughtProps++; } } fclose(propfile); // printf(\"===================================\"); // printf(\"|| Created %d Properties ||\", PropertiesAmount); // printf(\"||%d of the properties are bought||\", BoughtProps); // printf(\"===================================\"); } } } stock SaveProperties() { new entry[256]; new File: propfile = fopen(\"PropertySystem/PropertyInfo.txt\", io_write); for(new id; id<PropertiesAmount; id++) { format(entry, 128, \"%s,%.2f,%.2f,%.2f,%d,%d,%s,%d,%d \\r\\n\",PropInfo[id][PropName], PropInfo[id][PropX], PropInfo[id][PropY], PropInfo[id][PropZ], PropInfo[id][PropValue], PropInfo[id][PropEarning], PropInfo[id][PropOwner], PropInfo[id][PropIsBought], PropInfo[id][PropUnbuyableTime]); fwrite(propfile, entry); } // printf(\"Saved %d Properties!\", PropertiesAmount); fclose(propfile); } forward split(const strsrc[], strdest[][], delimiter); public split(const strsrc[], strdest[][], delimiter) { new i, li; new aNum; new len; while(i <= strlen(strsrc)){ if(strsrc==delimiter || i==strlen(strsrc)){ len = strmid(strdest[aNum], strsrc, li, i, 128); strdest[aNum][len] = 0; li = i+1; aNum++; } i++; } return 1; } stock CountProperties() { new entry[256]; new File: propfile = fopen(\"PropertySystem/PropertyInfo.txt\", io_read); while(fread(propfile, entry, 256)) { PropertiesAmount++; } fclose(propfile); } forward IsPlayerNearProperty(playerid); public IsPlayerNearProperty(playerid) { new Float:Distance; for(new prop; prop<PropertiesAmount; prop++) { Distance = GetDistanceToProperty(playerid, prop); if(Distance < 1.0) { return prop; } } return -1; } forward Float:GetDistanceToProperty(playerid, Property); public Float:GetDistanceToProperty(playerid, Property) { new Float:x1,Float:y1,Float:z1,Float:x2,Float:y2,Float:z2; GetPlayerPos(playerid,x1,y1,z1); x2 = PropInfo[Property][PropX]; y2 = PropInfo[Property][PropY]; z2 = PropInfo[Property][PropZ]; return floatsqroot(floatpower(floatabs(floatsub(x2,x1)),2)+floatpower(floatabs(floatsub(y2,y1)),2)+floatpower(floatabs(floatsub(z2,z1)),2)); } stock GetPlayerID(const Name[]) { for(new i; i<MAX_PLAYERS; i++) { if(IsPlayerConnected(i)) { new pName[MAX_PLAYER_NAME]; GetPlayerName(i, pName, sizeof(pName)); if(strcmp(Name, pName, true)==0) { return i; } } } return -1; } stock SendClientMessageToAllEx(exeption, color, const message[]) { for(new i; i<MAX_PLAYERS; i++) { if(IsPlayerConnected(i)) { if(i != exeption) { SendClientMessage(i, color, message); } } } } forward UpdateUnbuyableTime(); public UpdateUnbuyableTime() { for(new propid; propid<PropertiesAmount; propid++) { if(PropInfo[propid][PropIsBought] == 1) { if(PropInfo[propid][PropUnbuyableTime] > 0) { PropInfo[propid][PropUnbuyableTime]--; } } } } stock encodepass(buf[]) { new length=strlen(buf); new s1 = 1; new s2 = 0; new n; for (n=0; n<length; n++) { s1 = (s1 + buf[n]) % 65521; s2 = (s2 + s1) % 65521; } return (s2 << 16) + s1; } forward MapIconStreamer(); public MapIconStreamer() { for(new i; i<MP; i++) { if(IsPlayerConnected(i)) { new Float:SmallestDistance = 99999.9; new CP, Float:OldDistance; for(new propid; propid<PropertiesAmount; propid++) { OldDistance = GetDistanceToProperty(i, propid); if(OldDistance < SmallestDistance) { SmallestDistance = OldDistance; CP = propid; } } RemovePlayerMapIcon(i, 31); if(PropInfo[CP][PropIsBought] == 1) { SetPlayerMapIcon(i, 31, PropInfo[CP][PropX], PropInfo[CP][PropY], PropInfo[CP][PropZ], 32, 0); } else { SetPlayerMapIcon(i, 31, PropInfo[CP][PropX], PropInfo[CP][PropY], PropInfo[CP][PropZ], 31, 0); } } } } forward PropertyPayout(); public PropertyPayout() { new str[64]; for(new i; i<MAX_PLAYERS; i++) { if(IsPlayerConnected(i)) { if(PlayerProps > 0) { GivePlayerMoney(i, EarningsForPlayer); format(str, 64, \"Házaid bevétele: %d$\", EarningsForPlayer); SendClientMessage(i, 0x99FF66AA, str); } } } }