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 - antal1208
Oldalak: [1]
1
« Dátum: 2015. december 28. - 20:17:43 »
Sziasztok! Nagyon sokszor van olyan, hogy a chatbox-ban többször is kiír valamit akár egymás után 10-szer azt amit egyébként csak kétszer kellene neki. Próbálkoztam a setTimer-el hogy csak egyszer fusson le de nem használt! Segítsetek! local player = getLocalPlayer() local tp_Time = 0; function open_teleport_gui() if not isPedInVehicle ( player ) then if tp_Time == 0 then unbindKey ( \"F1\", \"down\", open_teleport_gui) function teleport_time() tp_Time = tp_Time + 1 if tp_Time == 60 then tp_Time = 0 end end setTimer(teleport_time,1000,60) screen_x, screen_y = guiGetScreenSize() gui_x, gui_y = 1024,576 x = (screen_x/2) - (gui_x/2) y = (screen_y/2) - (gui_y/2) ----GUI---- showCursor(true) guiMap = guiCreateStaticImage(x, y, 1024, 576, \"images/gui_map.png\",false) guiSetVisible(guiMap, true) ----GUI---- ----GOMBOK---- btn_nagy_antenna = guiCreateLabel(49,131,240,151, \" \",false,guiMap) btn_parkolo = guiCreateLabel(393,131,240,151, \" \",false,guiMap) btn_sf_alatti = guiCreateLabel(738,131,240,151, \" \",false,guiMap) exit_button = guiCreateLabel(982,12,28,28,\" \",false,guiMap) ----GOMBOK---- addEventHandler(\"onClientGUIClick\",btn_nagy_antenna,tp_nagy_antenna,false) addEventHandler(\"onClientGUIClick\",btn_parkolo,tp_parkolo,false) addEventHandler(\"onClientGUIClick\",btn_sf_alatti,tp_sf_alatti,false) addEventHandler(\"onClientGUIClick\",exit_button,hideguiMap,false) else outputChatBox (\"#FF0000 [sERVER] #00FFFF Csak egyszer teleportálhatsz percenként!!! #FF0000Hátralévő idő:\"..(60-tp_Time)..\"mp\",255,255,255,true) end else outputChatBox (\"#FF0000 [sERVER] #00FFFF Teleportálás előtt #FF0000szálj ki#00FFFF a járművedből!\",255,255,255,true) end end --addCommandHandler(\"teleport\",open_teleport_gui) function hideguiMap() showCursor(false) function slow_alpha() alpha = guiGetAlpha(guiMap) guiSetAlpha(guiMap, alpha - 0.05) if(alpha==0) then guiSetVisible(guiMap,false) bindKey ( \"F1\", \"down\", open_teleport_gui) end end setTimer(slow_alpha,50,21) end function tp_nagy_antenna() --outputChatBox(\"Jó helyen van!\") setElementPosition ( player, math.random(-346.6,-339.7) ,math.random(1535.5,1549), 75.6 ) hideguiMap() end function tp_parkolo() --outputChatBox(\"Jó helyen van!\") setElementPosition ( player, math.random (2349.5,2356.1) ,math.random (1503.8,1512.5), 43 ) hideguiMap() end function tp_sf_alatti() --outputChatBox(\"Jó helyen van!\") setElementPosition ( player, math.random(-2524.5,-2518) ,-622, 132 ) hideguiMap() end function bind_f1() function cursor() if isCursorShowing ( ) then showCursor(false) else showCursor(true) end end bindKey(\"m\", \"down\", cursor) bindKey ( \"F1\", \"down\", open_teleport_gui) end addEventHandler(\"onClientResourceStart\",getRootElement(),bind_f1)
2
« Dátum: 2015. december 27. - 22:04:17 »
Sziasztok! Van egy client oldali script, ami létrehoz egy markert a resource indulásakor! Abba a markerba ha belemegyek nekem létre kell hozni valahol máshol egy markert. De ha valaki más megy bele az első markárba én is látom az ő másodjára létrehozott markerét... ez miért van? O.o function resource_start() start_marker = createMarker(2297.2,1512.5,42.1,\"corona\",8,0,230,0,50) function make_end_marker() end_marker = createMarker(2308.4,1381.4,10,\"cylinder\",8,0,230,0,50) end addEventHandler(\"onClientMarkerHit\",start_marker,make_end_marker) end addEventHandler(\"onClientResourceStart\",getRootElement(),resource_start)
3
« Dátum: 2015. december 27. - 18:49:33 »
Sziasztok! Csináltam egy scriptet ami lerak egy objectet rá egy markert és ha valaki bele megy ad neki pénzt, de a function destroy résszel valami gond van, mert nem törli ki az objectet 15 másodperc után. if box_pos == 13 then x = 2259.3 y = 1459 z = 14.2 basketball_13 = createObject ( 2114, x, y, z, 0, 0, 0, false ) basketball_marker_13 = createMarker ( x, y, z,\"corona\",5,255,255,255,50) setObjectScale ( basketball_13, 3) function destroy() destroyElement ( basketball_13 ) destroyElement ( basketball_marker_13 ) end setTimer(destroy,15000,1) function onMarkerHit(source,moneyvalue) plus_money = getElementData(source,\"driftmoney\") old_money = getPlayerMoney(source) new_money = old_money + (plus_money/2) --outputChatBox(iDriftScore) setPlayerMoney(source,tonumber(new_money)) if plus_money >= 30 then triggerClientEvent ( getRootElement(), \"play\", getRootElement()) destroyElement ( basketball_13 ) destroyElement ( basketball_marker_13 ) end end addEventHandler(\"onMarkerHit\",basketball_marker_13,onMarkerHit) end
4
« Dátum: 2015. december 27. - 15:21:51 »
Sziasztok! Ez egy client oldali script amivel szeretném \"kiíratni\" a pénzt. De megjelenik a pénz és pár másodperc múlva pedig eltűnik function hud_components() local myfont = dxCreateFont (\"rapier.ttf\",40,_,\"cleartype_natural\") local player = getLocalPlayer() local money = getPlayerMoney(player) local x,y = guiGetScreenSize() --dxDrawText ( money..\" $\", x/1.3, y/15,0,0, tocolor( 0, 0, 0, 255 ),0.81, myfont ) dxDrawText ( money..\" $\", x/1.3, y/9,0,0, tocolor( 255, 215,0, 255 ),0.8, myfont ) end addEventHandler ( \"onClientRender\", root, hud_components)
5
« Dátum: 2015. december 26. - 17:05:24 »
Sziasztok! Nagyon alap kocsi rendszert csinálok set, getElementData-val. El is menti amit el kell mentenie be is tölti, de ki és belépéskor amikor beírom hogy /smc a getElementData false-t ad vissza Client oldal: function buy_bravura() carId = 401 triggerServerEvent (\"carBuy\", getLocalPlayer(),carId) end Szerver: function spawnMyCar(source,carId) local carId = getElementData(source,\"ownCarId\") outputChatBox(tostring(carId)) local player_x,player_y,player_z = getElementPosition(source) createVehicle(carId,player_x+5,player_y,player_z) end addCommandHandler(\"smc\",spawnMyCar,false) function carBuy(carId) outputChatBox(\"Megvéve!\",source) outputChatBox(carId) setElementData(source,\"ownCarId\", carId) carId = getElementData(source,\"ownCarId\") outputChatBox(\"CARID:\"..carId) end addEvent(\"carBuy\",true) addEventHandler( \"carBuy\", getRootElement(), carBuy)
6
« Dátum: 2015. december 24. - 13:03:26 »
Sziasztok! Meg lehet azt valahogy oldani, hogy a guminyom ne tűnjön el? Mondjuk szerver újraindításig vagy valami? Már drift szerón szerintem nem lenne baj ha ott maradna a guminyom, elég rossz, hogy pár másodperc múlva eltűnik. Kellemes Ünnepeket, és Boldog Karácsonyt mindenkinek!
7
« Dátum: 2015. december 23. - 17:37:50 »
Hali srácok! Lenne pár kérdésem, oda értem, hogy most már el kezdett érdekelni a MySql mert ez tűnik a legjobb adat mentési opciónak! A mysql az tulajdonképp olyan mint az Access, jól gondolom? Azzal már volt dolgom érettségin, de gondolom a MySql az kicsit más. Az első kérdés, hogy ide mindent lementhetek-e amit szeretnék? Van-e olyan ami felesleges oda menteni? Van egy olyan amit nem szabad oda menteni? Második. Keresgéltem a neten, és nem igazán találtam róla anyagot, videóban egyáltalán mivel mindenki letöltött egy modot azt összekapcsolta MySql-el és konyec filma. A Wiki-s MySql részleg hát az valahogy nem jött át. Sikerült telepíteni a MySql-t a szerverre, van XAMPP-om de azt már nem igazán találtam meg, hogy végülis a local hostname, local username, local password, local database-t tartalmazó lua scriptet azt most szerver vagy client oldaliként kell menteni? Odáig jutottam, hogy handler = mysql_connect ( host, username, password, database) és akkor innen hogyan tovább? Mondjuk ha van egy local value = 156 és már van MySql-en egy MTA táblám hogy tudom beleírtani/menteni ezt a változót? És hogyan tudom ezt legközelebb előcsalogatni? Ha van rá mód örülnék ha saját szavaitokkal magyaráznátok el és nem linkelgetnétek. Ja és egy nagyon egyszerű példa scriptet is szeretnék ha lehet!! Köszönöm!
8
« Dátum: 2015. december 22. - 21:20:22 »
Sziasztok! Ezt a programot majd 2 éve csináltam amikor a programozást kezdtem, az első nyelv amit elkezdtem tanulni a C volt. Most ráleltem egy programra 2014.01-hóban volt rajta az utolsó módosítás! C-be íródott az egész! És jelztem, méri az időt is, és tudni illik a C az nem egy multitaskingos nyelv! Van egy ennél érdekesebb is, ami kitalálja, hogy mire gondoltál, de azt most nem találom, de ha valakit érdekel jobban áttúrom a dolgokat és felrakom! http://ddl3.data.hu/get/0/9346321/jatek.rar Nincs benne keylogger meg ilyesmi
9
« Dátum: 2015. december 22. - 19:56:43 »
Sziasztok! Épp egy scriptet írok ami F1-re előhoz egy ablakot amin 3 kép van(3 pálya). Amelyikre kattint a player oda teleportálja. Amikor rákattint szépen lassan elhalványul az ablak, de ha mégegyszer megnyomom az F1-et megint előhozza és bebugol, nem lehet becsukni etc.. erre kitaláltam, hogy amikor előhozza az ablakot UnBindelem az F1-et aztán ha teljesen eltünt az ablak akkor újra be kellene, hogy bindelje. De valamiért nem működik. Elteleportál, az ablak eltünik, de nem bindeli vissza az F1-et és amikor előhozom a kurzort és simán odakattintok a pálya helyére újra odateleportál, ekkor már visszabindeli, de csomoszór kiírja egyszerre h nem teleportálhatsz még X ideig. Szóval valahol nagyon elronthattam. Ha hiba szerintem a function hideguiMap()-ben keresendő! HELP!! :wall: EDIT: Már csak az a hiba áll fent, hogy az ablak eltűnése utána, valamelyik pályára vagy is akkor már csak a hekyére kattintok ugyan úgy elteleportál :SS local player = getLocalPlayer() local tp_Time = 0; function open_teleport_gui() if tp_Time == 0 then --unbindKey ( \"F1\", \"down\", open_teleport_gui) function teleport_time() tp_Time = tp_Time + 1 if tp_Time == 60 then tp_Time = 0 end end setTimer(teleport_time,1000,60) screen_x, screen_y = guiGetScreenSize() gui_x, gui_y = 1280,720 x = (screen_x/2) - (gui_x/2) y = (screen_y/2) - (gui_y/2) ----GUI---- showCursor(true) guiMap = guiCreateStaticImage(x, y, 1280, 720, \"images/gui_map.png\",false) guiSetVisible(guiMap, true) ----GUI---- ----GOMBOK---- btn_nagy_antenna = guiCreateLabel(66,168,289,180, \" \",false,guiMap) btn_parkolo = guiCreateLabel(496,168,289,180, \" \",false,guiMap) btn_sf_alatti = guiCreateLabel(926,168,289,180, \" \",false,guiMap) exit_button = guiCreateLabel(1228,20,30,30,\" \",false,guiMap) ----GOMBOK---- addEventHandler(\"onClientGUIClick\",btn_nagy_antenna,tp_nagy_antenna,false) addEventHandler(\"onClientGUIClick\",btn_parkolo,tp_parkolo,false) addEventHandler(\"onClientGUIClick\",btn_sf_alatti,tp_sf_alatti,false) addEventHandler(\"onClientGUIClick\",exit_button,hideguiMap,false) else outputChatBox (\"#FF0000 [sERVER] #00FFFF Csak egyszer teleportálhatsz percenként!!! #FF0000Hátralévő idő:\"..(60-tp_Time),255,255,255,true) end end addCommandHandler(\"teleport\",open_teleport_gui) function hideguiMap() showCursor(false) function slow_alpha() alpha = guiGetAlpha(guiMap) guiSetAlpha(guiMap, alpha - 0.05) end setTimer(slow_alpha,50,20) if (alpha==0) then guiSetVisible(guiMap,false) end end function tp_nagy_antenna() --outputChatBox(\"Jó helyen van!\") setElementPosition ( player, math.random(-346.6,-339.7) ,math.random(1535.5,1549), 75.6 ) hideguiMap() end function tp_parkolo() --outputChatBox(\"Jó helyen van!\") setElementPosition ( player, math.random (2349.5,2356.1) ,math.random (1503.8,1512.5), 43 ) hideguiMap() end function tp_sf_alatti() --outputChatBox(\"Jó helyen van!\") setElementPosition ( player, math.random(-2524.5,-2518) ,-622, 132 ) hideguiMap() end function bind_f1() function cursor() showCursor(true) end bindKey(\"m\", \"down\", cursor) bindKey ( \"F1\", \"down\", open_teleport_gui) end addEventHandler(\"onClientResourceStart\",getRootElement(),bind_f1)
10
« Dátum: 2015. december 21. - 19:11:29 »
Sziasztok! Ismét én! Mivel most tanulgatom azt MTA scriptelést sok kérdést írok ki ide és még fogok is! Mint ahogy eddig is, most sem azt fogom kérni, hogy írjátok meg helyettem, hanem, hogy indítsatok el egy úton! A következő amit szeretnék, a saját kocsi system. Fogalmam sincs, hogy kezdjek hozzá. Azt tudom, hogy szeretnék egy panelt, amin lesz kocsikról kép és rákattintáskor megveszi, levonja a pénzt, le spawnolja mellénk. És ez a kocsi mindig megmaradt, úgy mint egy Rp szerón! Tehát azt is szeretném, hogy a tuning megmaradjon rajta stb... Kérlek segítsetek, elméleti síkon indítsatok el aztán, ha elkezdtem és közbe van kérdés majd írok! Köszönöm!
11
« Dátum: 2015. december 20. - 20:10:54 »
Sziasztok! Kezdem érteni ezt a setElementData meg getElementData dolgok de mégis kellene egy kis segítség: :unsure: Client oldali script. iMaxScore-t elmentem driftscore néven setElementData-val amikor véget ér a drift. Ezt le is ellenőrzöm, elmenti. Ezt amikor kilép a player server oldalon lekérem. De aztán mikor belép a játékos hogy töltsem ezt neki be az iMaxScore-ba hogy lássa mennyivel lépett ki előzőleg?! Client: local iDriftScore = 0; local iMaxScore = 0; local iScore = 0; local iMyCombo = 1; local fCustomFontScale = 2; local bJustFinished = false; local player = getLocalPlayer( ) addEventHandler( \"onClientMapStarting\", root, function( tMapInfo ) iMaxScore = 0; iDriftScore = 0; iMyCombo = 0; txtBestScore: text( \"Best score:\" ); for i, v in pairs( tMapInfo ) do outputDebugString( tostring( i ) .. \" : \" .. tostring( v ) ); end end ); addEventHandler( \"onClientResourceStart\", resourceRoot, function( ) dxSetTestMode( \"none\" ); txtCombo = dxText: create( \"x2\", screenSize[ 1 ] - 100, screenSize[ 2 ] / 2 , false, \"default-bold\", 5 ); txtCombo: type( \"shadow\", 4 ); txtCombo: visible( false ); txtComboTitle = dxText: create( \"COMBO\", screenSize[ 1 ] * 0.9, screenSize[ 2 ] / 2 - 60, false, \"default-bold\", 3 ); txtComboTitle: type( \"shadow\", 3 ); txtComboTitle: visible( false ); txtScoreTitle = dxText: create( \"DRIFT\", screenSize[ 1 ] / 2, screenSize[ 2 ] / 5.6, false, \"default-bold\", 3 ); txtScoreTitle: type( \"shadow\", 3 ); txtScoreTitle: visible( false ); txtScore = dxText: create( \"\", screenSize[ 1 ] / 2, screenSize[ 2 ] / 4, false, \"default-bold\", 3 ); txtScore: visible( false ); txtScore: type( \"shadow\", 3 ); txtBestScore = dxText: create( \"Best score: 0\", screenSize[ 1 ] * 0.8, 20, false, \"arial\", 2 ); txtBestScore: type( \"shadow\", 2 ); ftDigitalism = dxCreateFont( \"digitalism.ttf\", 20, true ); if ftDigitalism then txtCombo: font( ftDigitalism ); txtCombo: scale( fCustomFontScale ); txtComboTitle: font( ftDigitalism ); txtComboTitle: scale( fCustomFontScale*.7 ); txtScore: font( ftDigitalism ); txtScore: scale( fCustomFontScale ); txtScoreTitle: font( ftDigitalism ); txtScoreTitle: scale( fCustomFontScale ); txtBestScore: font( ftDigitalism ); txtBestScore: scale( fCustomFontScale/2 ); end end ) addEventHandler( \"onClientVehicleStartDrift\", root, function( ) addEventHandler( \"onClientVehicleDrift\", root, drift ); if not bJustFinished then txtScore: text( \"0\" ); txtScore: visible( true ); txtScoreTitle: visible( true ); local r,g,b,a = txtScore: color( ); txtScore: color( r, g, b, 255 ); end end ) addEventHandler( \"onClientVehicleEndDrift\", root, function( ) removeEventHandler( \"onClientVehicleDrift\", root, drift ); iLastScore = iDriftScore * iMyCombo; txtCombo: visible( false ); txtComboTitle: visible( false ); txtScore: text( tostring( iLastScore ) ); Animation.createAndPlay( txtScore, Animation.presets.dxTextMove( screenSize[ 1 ] / 2, screenSize[ 2 ] / 4, 100, false, screenSize[ 1 ] * .3, screenSize[ 2 ] / 4 ) ); --Animation.createAndPlay( txtScore, Animation.presets.dxTextFadeIn( 100 ) ); Animation.createAndPlay( txtScoreTitle, Animation.presets.dxTextMove( screenSize[ 1 ] / 2, screenSize[ 2 ] / 5.6, 100, false, screenSize[ 1 ] * .7, screenSize[ 2 ] / 5.6 ) ); --Animation.createAndPlay( txtScoreTitle, Animation.presets.dxTextFadeIn( 300 ) ); if iLastScore > iMaxScore then txtBestScore: text( \"Best Score: \" .. tostring( iLastScore ) ); iMaxScore = iLastScore; end bJustFinished = true; setTimer( changeFinishedState, 2000, 1 ); setTimer( centreScore, 100, 1 ); iDriftScore = 0; iMyCombo = 1; setElementData(player, \"driftscore\", iMaxScore) lol = getElementData(player, \"driftscore\") outputChatBox(lol) end ) addEventHandler( \"onClientVehicleDriftCombo\", root, function( iCombo ) txtCombo: text( \"x\"..tostring( iCombo ) ); txtCombo: visible( true ); txtComboTitle: visible( true ); playSoundFrontEnd( 43 ); Animation.createAndPlay( txtCombo, Animation.presets.dxTextMoveResize( screenSize[ 1 ] * 0.9, screenSize[ 2 ] / 2 - 10, ftDigitalism and fCustomFontScale*.75 or 5, 300, false, -- time, loop, screenSize[ 1 ] * 0.9, screenSize[ 2 ] / 2 - 10, ftDigitalism and fCustomFontScale*3 or 15 ) ); Animation.createAndPlay( txtCombo, Animation.presets.dxTextFadeIn( 300 ) ); iMyCombo = iCombo; end ); function drift( fAngle, fSpeed, sSide, iDriftTime ) local iNewScore = math.ceil( iDriftScore + (fAngle/25) * (fSpeed/15) ); if not bJustFinished then txtScore: text( tostring( iNewScore ) ); txtScore: visible( true ); txtScoreTitle: visible( true ); local r,g,b = txtScore: color( ); txtScore: color( r, g, b, 255 ); end iDriftScore = iNewScore; end function centreScore( ) txtScore: position( screenSize[ 1 ] / 2, screenSize[ 2 ] / 4, false ) txtScoreTitle: position( screenSize[ 1 ] / 2, screenSize[ 2 ] / 5.6, false ); end function changeFinishedState( ) bJustFinished = false; if iDriftScore == 0 then txtScore: visible( false ); txtScoreTitle: visible( false ); else txtScore: text( tostring( iDriftScore ) ); end end function iMaxScore() iMaxScore = getElementData(player, \"driftscore\") end addEventHandler(\"onClientResourceStart\",root,iMaxScore)
Server: local iMaxScore = getElementData(source, \"driftscore\") end addEventHandler(\"onPlayerQuit\",myscore)]
12
« Dátum: 2015. december 18. - 17:47:55 »
Miért nem működik? Client oldali teszt függvényem gyakorlásnak a setElementData, és getElementDatához, de valamiért nem menti el a pénzt/nem töltibe. local player = getLocalPlayer( ) local penz = 1; function addmoney() penz=penz+10; outputChatBox(\"Penzed novelve, erteke:\"..penz..\"\",source) end addCommandHandler(\"addmoney\",addmoney) function mymoney() outputChatBox(\"A penzed:\"..penz..\"\") end addCommandHandler(\"mymoney\",mymoney) function onPlayerQuit() setElementData(player,\"MONEY\",penz) end addEventHandler(\"onClientPlayerQuit\",getRootElement(),onPlayerQuit) function onPlayerLogin() local penz = getElementData(player, \"MONEY\") end addEventHandler(\"onClientPlayerSpawn\",getRootElement(),onPlayerLogin)
13
« Dátum: 2015. december 16. - 21:18:43 »
Sziasztok! Valaki kérem magyarázza el ez így ebben a formában miért nem jó márt már kihullik a hajam és, hogy a function paramétereihez mikor mit kell írni :S Meg ,hogy az addEventHandler második paramétere mire jó. Köszönöm! local marker_1 = createMarker ( 3453.8, 1989.85, 50,\"cylinder\",1) local marker_2 = createMarker ( 3454.5, 2000, 50,\"cylinder\",1) function login_marker(playerSource) local player = getPlayerName(playerSource) setElementPosition (player, 2346.5,1518.2,50) fadeCamera (source, true) setCameraTarget (source, source) setPlayerBlurLevel ( source, 0 ) end addEventHandler(\"onMarkerHit\", marker_1, login_marker)
14
« Dátum: 2015. december 15. - 16:11:11 »
Sziasztok! Lua-t tanulok, nem rég kezdtem. De már is egy kis gondba ütköztem! Vázolom. Van egy drift score mérő script ami méri a Best Score-t ez egy client oldali lua fájl. De amikor kilépek és be, ugye ez le nullázódik, és ezt szeretném kiküszöbölni! Az tudom, hogy ezt a négy utasítást kellene használni, a getElementData, getAccountData, setElementData, és setAccountData. Ezt a négyet. Sikerült is ezekből egy olyan scriptet írnom ami az alap pénzt menti kilépéskor belépéskor pedig betölti. Ez már nem megy a drift score elmentésével, több napja próbálkozom de nem megy. Itt a client oldali drift mérő lua fájl: --ez az alap file local iDriftScore = 0; local iMaxScore = 0; local iScore = 0; local iMyCombo = 1; local fCustomFontScale = 2; local bJustFinished = false; addEventHandler( \"onClientMapStarting\", root, function( tMapInfo ) iMaxScore = 0; iDriftScore = 0; iMyCombo = 0; txtBestScore: text( \"Best Score: 0\" ); for i, v in pairs( tMapInfo ) do outputDebugString( tostring( i ) .. \" : \" .. tostring( v ) ); end end ); addEventHandler( \"onClientResourceStart\", resourceRoot, function( ) dxSetTestMode( \"none\" ); txtCombo = dxText: create( \"x2\", screenSize[ 1 ] - 100, screenSize[ 2 ] / 2 , false, \"default-bold\", 5 ); txtCombo: type( \"shadow\", 4 ); txtCombo: visible( false ); txtComboTitle = dxText: create( \"COMBO\", screenSize[ 1 ] * 0.9, screenSize[ 2 ] / 2 - 60, false, \"default-bold\", 3 ); txtComboTitle: type( \"shadow\", 3 ); txtComboTitle: visible( false ); txtScoreTitle = dxText: create( \"DRIFT\", screenSize[ 1 ] / 2, screenSize[ 2 ] / 5.6, false, \"default-bold\", 3 ); txtScoreTitle: type( \"shadow\", 3 ); txtScoreTitle: visible( false ); txtScore = dxText: create( \"\", screenSize[ 1 ] / 2, screenSize[ 2 ] / 4, false, \"default-bold\", 3 ); txtScore: visible( false ); txtScore: type( \"shadow\", 3 ); txtBestScore = dxText: create( \"Best Score: 0\", screenSize[ 1 ] * 0.8, 20, false, \"arial\", 2 ); txtBestScore: type( \"shadow\", 2 ); ftDigitalism = dxCreateFont( \"digitalism.ttf\", 20, true ); if ftDigitalism then txtCombo: font( ftDigitalism ); txtCombo: scale( fCustomFontScale ); txtComboTitle: font( ftDigitalism ); txtComboTitle: scale( fCustomFontScale*.7 ); txtScore: font( ftDigitalism ); txtScore: scale( fCustomFontScale ); txtScoreTitle: font( ftDigitalism ); txtScoreTitle: scale( fCustomFontScale ); txtBestScore: font( ftDigitalism ); txtBestScore: scale( fCustomFontScale/2 ); end end ) addEventHandler( \"onClientVehicleStartDrift\", root, function( ) addEventHandler( \"onClientVehicleDrift\", root, drift ); if not bJustFinished then txtScore: text( \"0\" ); txtScore: visible( true ); txtScoreTitle: visible( true ); local r,g,b,a = txtScore: color( ); txtScore: color( r, g, b, 255 ); end end ) addEventHandler( \"onClientVehicleEndDrift\", root, function( ) removeEventHandler( \"onClientVehicleDrift\", root, drift ); iLastScore = iDriftScore * iMyCombo; txtCombo: visible( false ); txtComboTitle: visible( false ); txtScore: text( tostring( iLastScore ) ); Animation.createAndPlay( txtScore, Animation.presets.dxTextMove( screenSize[ 1 ] / 2, screenSize[ 2 ] / 4, 100, false, screenSize[ 1 ] * .3, screenSize[ 2 ] / 4 ) ); --Animation.createAndPlay( txtScore, Animation.presets.dxTextFadeIn( 100 ) ); Animation.createAndPlay( txtScoreTitle, Animation.presets.dxTextMove( screenSize[ 1 ] / 2, screenSize[ 2 ] / 5.6, 100, false, screenSize[ 1 ] * .7, screenSize[ 2 ] / 5.6 ) ); --Animation.createAndPlay( txtScoreTitle, Animation.presets.dxTextFadeIn( 300 ) ); if iLastScore > iMaxScore then txtBestScore: text( \"Pénz(drift score): \" .. tostring( iLastScore ) ); iMaxScore = iLastScore; end bJustFinished = true; setTimer( changeFinishedState, 2000, 1 ); setTimer( centreScore, 100, 1 ); iDriftScore = 0; iMyCombo = 1; end ) addEventHandler( \"onClientVehicleDriftCombo\", root, function( iCombo ) txtCombo: text( \"x\"..tostring( iCombo ) ); txtCombo: visible( true ); txtComboTitle: visible( true ); playSoundFrontEnd( 43 ); Animation.createAndPlay( txtCombo, Animation.presets.dxTextMoveResize( screenSize[ 1 ] * 0.9, screenSize[ 2 ] / 2 - 10, ftDigitalism and fCustomFontScale*.75 or 5, 300, false, -- time, loop, screenSize[ 1 ] * 0.9, screenSize[ 2 ] / 2 - 10, ftDigitalism and fCustomFontScale*3 or 15 ) ); Animation.createAndPlay( txtCombo, Animation.presets.dxTextFadeIn( 300 ) ); iMyCombo = iCombo; end ); function drift( fAngle, fSpeed, sSide, iDriftTime ) local iNewScore = math.ceil( iDriftScore + (fAngle/25) * (fSpeed/15) ); if not bJustFinished then txtScore: text( tostring( iNewScore ) ); txtScore: visible( true ); txtScoreTitle: visible( true ); local r,g,b = txtScore: color( ); txtScore: color( r, g, b, 255 ); end iDriftScore = iNewScore; end function centreScore( ) txtScore: position( screenSize[ 1 ] / 2, screenSize[ 2 ] / 4, false ) txtScoreTitle: position( screenSize[ 1 ] / 2, screenSize[ 2 ] / 5.6, false ); end function changeFinishedState( ) bJustFinished = false; if iDriftScore == 0 then txtScore: visible( false ); txtScoreTitle: visible( false ); else txtScore: text( tostring( iDriftScore ) ); end end
Ez pedig a saját kódóm arra, hogy elmentsem. Lehet több sebből is vérzik, de ez a legutóbbi próbálkozásom a sok közül: function onPlayerQuit( ) local playeraccount = getPlayerAccount(source) local ertek = iMaxScore --getPlayerMoney ( source ) setAccountData(playeraccount, \"driftscore\", ertek) end function onPlayerLogin(_, playeraccount) local ertek = getAccountData(playeraccount, \"driftscore\") --setPlayerMoney(source, ertek ) setElementData ( source, iMaxScore, \"driftscore\") end addEventHandler(\"onPlayerLogin\",getRootElement(),onPlayerLogin) addEventHandler(\"onPlayerQuit\",getRootElement(),onPlayerQuit) Annak is örülök ha valaki átírja nekem, és elmagyarázza, hogy ez miért így vagy. De annak is örülnék ha valaki elmondaná, az elvet hogyan kellene, és hogy ez a 4 utasítás a paraméterei-vel együtt mit csinál?! Bármilyen segítséget elfogadok akár TS-en is Team Viewer-el is meg tudjuk beszélni ha dobsz egy pü.-t! Előre is köszönöm szépen!
Oldalak: [1]
|