Angepinnt Nützliche Codeschnipsel

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

    • LUA-Quellcode

      1. --Button
      2. function createMarwinButton(x,y,widht,height,text,bool,parent)
      3. button = guiCreateStaticImage(x,y,widht,height,"images/button_standart.png", bool,parent or nil)
      4. table.insert(marwinButtons,button)
      5. guiBringToFront(button)
      6. label = guiCreateLabel(0,0,1,1,text,true,button)
      7. guiBringToFront(label)
      8. setElementData(label,"parent",button)
      9. --guiSetFont(label,font[1])
      10. guiLabelSetVerticalAlign (label, "center")
      11. guiLabelSetHorizontalAlign (label, "center")
      12. addEventHandler("onClientMouseEnter",label,markButton,false)
      13. addEventHandler("onClientMouseLeave",label,unmarkButton,false)
      14. return label
      15. end
      16. function markButton ()
      17. parent = getElementData(source,"parent")
      18. guiStaticImageLoadImage (parent,"images/button_mouse.png")
      19. setElementData(getLocalPlayer(),"clickedButton",parent)
      20. end
      21. function unmarkButton ()
      22. parent = getElementData(source,"parent")
      23. guiStaticImageLoadImage (parent,"images/button_standart.png")
      24. setElementData(getLocalPlayer(),"clickedButton",false)
      25. end
      26. --Button end
      Alles anzeigen


      -Zum Image Button Createn
      Man brauch:
      images/button_standart.png
      images/button_mouse.png

      clickedButton ist dafür da wenn man ein onClientGuiClick ausführt das man die elementData abfragen kann, anders ging es bei mir komischerweise nicht.
      Ich muss mal schnell outside attacken
    • clientseitig
      Ein dxDrawText-Element langsam ein und ausblenden:

      LUA-Quellcode

      1. function renderit ()
      2. alpha = 0
      3. setTimer(function() alpha = alpha + 3 end,50,85)
      4. setTimer(function() setTimer(function() alpha = alpha -3 end, 50,85)end,10000,1)
      5. addEventHandler("onClientRender",root,dxelement)
      6. end
      7. --dein eventhandler für renderit einfügen
      8. function dxelement()
      9. local dxtext = dxDrawText("Text",startx,starty,endx,endy,tocolor(255,255,255,alpha),1,"bankgothic")
      10. end
    • Mit der Funktion kann man ein Tor erstellen, welches 2 Keypads hat, und man draufklicken muss, damit sich das Tor öffnet. Man hat diese Parameter:


      allowedTable, id, x, y, z, rotx, roty, rotz, mx, my, mz, mrotx, mroty, mrotz, time, kid, kx, ky, kz, krotx, kroty, krotz, kid2, kx2, ky2, kz2, krotx2, kroty2, krotz2

      allowedTable = ein Table mit namen, die das Tor benutzen dürfen(Beispiel: {[1] = "MuLTi"}
      id = Tor ModellID
      x, y, z, rotx, roty, rotz = Position des Tores/Rotation
      mx, my, mz, mrotx, mroty, mrotz = Position, wo das Tor hingemoved werden soll
      time = Zeit zum Moven in Milisekunden
      kid, kx, ky, kz, krotx, kroty, krotz = Position & Modellid des Keypads, wo man draufklicken soll(StandartID: 2886)
      kid2, kx2, ky2, kz2, krotx2, kroty2, krotz2 = Position & Modellid des 2. Keypads, wo man draufklicken soll(StandartID: 2886) (Eigentlich Optional, ungetestet)

      LUA-Quellcode

      1. -- Copyright by MuLTi --
      2. local function getDistanceBetweenElements(element1, element2)
      3. local x, y, z = getElementPosition(element1)
      4. local x1, y1, z1 = getElementPosition(element2)
      5. return getDistanceBetweenPoints3D(x, y, z, x1, y1, z1)
      6. end
      7. function createHouseGate(allowedTable, id, x, y, z, rotx, roty, rotz, mx, my, mz, mrotx, mroty, mrotz, time, kid, kx, ky, kz, krotx, kroty, krotz, kid2, kx2, ky2, kz2, krotx2, kroty2, krotz2)
      8. if not(id) or not(x) or not(y) or not(z) or not(time) then
      9. return false
      10. end
      11. if not(type(allowedTable) == "table") then return false end;
      12. local gate, keypad1, keypad2
      13. local gstate = false
      14. local movestate = false
      15. gate = createObject(id, x, y, z, rotx, roty, rotz)
      16. keypad1 = createObject(kid, kx, ky, kz, krotx, kroty, krotz)
      17. if(kid2) then
      18. keypad2 = createObject(kid2, kx2, ky2, kz2, krotx2, kroty2, krotz2)
      19. end
      20. if not(gate) then return false end;
      21. if not(keypad1) then return false end;
      22. for i = 1, 2, 1 do
      23. if(i == 1) then
      24. addEventHandler("onElementClicked", keypad1, function(button, state, thePlayer)
      25. if(button == "left") and (state == "down") then
      26. if(getDistanceBetweenElements(thePlayer, keypad1) > 10) then
      27. return false;
      28. end
      29. local playername = getPlayerName(thePlayer)
      30. local done = false
      31. for index, name in pairs(allowedTable) do
      32. if(playername == name) then
      33. done = true
      34. end
      35. end
      36. if(done == false) then return end
      37. if(movestate == true) then
      38. return false
      39. end;
      40. movestate = true
      41. setTimer(function() movestate = false end, time, 1)
      42. if(gstate == false) then
      43. gstate = true
      44. moveObject(gate, time, mx, my, mz, mrotx, mroty, mrotz, "InOutQuad")
      45. elseif(gstate == true) then
      46. gstate = false
      47. moveObject(gate, time, x, y, z, rotx-mrotx, mroty-mroty, mrotz-mrotz, "InOutQuad")
      48. end
      49. end
      50. end)
      51. elseif(i == 2) then
      52. if(keypad2) then
      53. addEventHandler("onElementClicked", keypad2, function(button, state, thePlayer)
      54. if(button == "left") and (state == "down") then
      55. if(getDistanceBetweenElements(thePlayer, keypad2) > 10) then
      56. return false;
      57. end
      58. local playername = getPlayerName(thePlayer)
      59. local done = false
      60. for index, name in pairs(allowedTable) do
      61. if(playername == name) then
      62. done = true
      63. end
      64. end
      65. if(done == false) then return end
      66. if(movestate == true) then
      67. return false
      68. end;
      69. movestate = true
      70. setTimer(function() movestate = false end, time, 1)
      71. if(gstate == false) then
      72. gstate = true
      73. moveObject(gate, time, mx, my, mz, mrotx, mroty, mrotz, "InOutQuad")
      74. elseif(gstate == true) then
      75. gstate = false
      76. moveObject(gate, time, x, y, z, rotx-mrotx, mroty-mroty, mrotz-mrotz, "InOutQuad")
      77. end
      78. end
      79. end)
      80. end
      81. end
      82. end
      83. if(keypad2) then
      84. return gate, keypad1, keypad2
      85. else
      86. return gate, keypad1
      87. end
      88. end
      Alles anzeigen


      Gibt: das Gate, keypad1, und ggf. Keypad2 wieder.

      Beispiel:

      LUA-Quellcode

      1. createHouseGate({[1] = "MuLTi", [2] = "Hmm", [3] = "Player", [4] = "aha"}, 974, 321.39999389648, -1188.1999511719, 77.099998474121, 0, 0, 38.25, 321.39999389648, -1188.1999511719, 72.5, 0, 0, 0, 1500, 2886, 330.29998779297, -1181.0999755859, 77.400001525879, 0, 0, 40, 2886, 312.39999389648, -1192.1999511719, 78, 0, 0, 120)

      Erstellt ein Tor mit 2 Keypads in der Nähe eines guten Hauses in Los Santos Reichenvirtel.
      mfg
      Mit freundlichen Grüßen,
      Noneatme
      WEBSITE | GITHUB | STACKOVERFLOW | E-MAIL | DONATE
      VERFÜGBAR VON MON-FRI 7-9 PM | SAT-SUN 1-10PM
    • eine Function die ein verschieden Geldbeträge gibt

      LUA-Quellcode

      1. function givemoney (thePlayer)
      2. local gelder = math.random(1, 3)
      3. if gelder == 1 then
      4. givePlayerMoney(thePlayer, 5)
      5. end
      6. if gelder == 2 then
      7. givePlayerMoney(thePlayer, 100)
      8. end
      9. if gelder == 3 then
      10. givePlayerMoney(thePlayer, 3434)
      11. end
      12. end
      13. addCommandHandler("geld", givemoney)
      Alles anzeigen
      Spoiler Alarm!

      Spoiler anzeigen
      Ich hatte euch gewarnt!


      Skype: kekskingjulian
      Reallife Script

      Testserver: mtasa://192.168.2.105:22003
      Bugs/Ungereimtheiten bitte bei mir melden :D

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von KeksKing ()

    • LUA-Quellcode

      1. --Copyright by Cobra--
      2. function math.rounding (num)
      3. if num then return math.floor(num+0.5)
      4. else return false
      5. end
      6. end


      Für das richtige Mathematische Runden von Zahlen, einfach dann math.floor gegen math.rounding ersetzten.

      und nicht wundern das z.B. in notepad das math.rounding nicht wie math.floor in lila angezeigt wird ^^


      lG Cobra
      Ganz egal wie feste man etwas packt... Man verliert es.
    • Lässt Lava durch ganz San Andreas fließen

      LUA-Quellcode

      1. function initLFControl() addCommandHandler("lavaspeed",function(source,cmdname,speed) exports.lavaflood:setLavaRiseSpeed(speed) end) addCommandHandler("lavalevel",function(source,cmdname,level) exports.lavaflood:setLavaLevel(level) end)endaddEventHandler("onResourceStart",resourceRoot,initLFControl)


      datei: lavafl_ctrl (normal in meta eintragen)

      LUA-Quellcode

      1. script_clientside = true
      2. function initLavaFlood() local sw,sh = guiGetScreenSize() local multx,multy = sw/1024,sh/768 setHeatHaze(128,0,12*multy,18*multy,65*multx,80*multy,80*multx,95*multy,true)
      3. addEvent("lavaflood:updateWaterLevel",true) addEventHandler("lavaflood:updateWaterLevel",root,updateLastWaterLevel) setTime(12,0) setTimer(healOverTime,500,0) setTimer(burnInWater,50,0) setTimer(createRandomFires,50,0) w1 = createWater(-3000,-3000,0,0,-3000,0,-3000,0,0,0,0,0) w2 = createWater(0,-3000,0,3000,-3000,0,0,0,0,3000,0,0) w3 = createWater(-3000,0,0,0,0,0,-3000,3000,0,0,3000,0) w4 = createWater(0,0,0,3000,0,0,0,3000,0,3000,3000,0) updateLastWaterLevel(0) addEventHandler("onClientPreRender",root,raiseWater)endaddEventHandler("onClientResourceStart",resourceRoot,initLavaFlood)
      4. function healOverTime() local health = getElementHealth(localPlayer) if health < 1 then return end setElementHealth(localPlayer,getElementHealth(localPlayer)+2)endfunction burnInWater() if isLocalPlayerInWater(localPlayer) then local health = getElementHealth(localPlayer) if health < 1 then return end setElementHealth(localPlayer,getElementHealth(localPlayer)-6) setPedOnFire(localPlayer,true) endend
      5. function isLocalPlayerInWater() for bone = 1,8 do if isBoneInWater(bone) then return true end end for bone = 1,6 do if isBoneInWater(20+bone) or isBoneInWater(30+bone) then return true end end for bone = 1,4 do if isBoneInWater(40+bone) or isBoneInWater(50+bone) then return true end end return falseend
      6. function isBoneInWater(bone) local x,y,z = getPedBonePosition(localPlayer,bone) return getWaterLevel(w1) > zend
      7. function createRandomFires() local cx,cy = getCameraMatrix() local wz = getWaterLevel(w1) local x1,y1,z1 = math.random()*100-50+cx,math.random()*100-50+cy,math.random()*2-1+wz local x2,y2,z2 = math.random()*100-50+cx,math.random()*100-50+cy,math.random()*2-1+wz local hit,x,y,z = processLineOfSight(x1,y1,z1,x2,y2,z2,true,true,true,true) if hit then createFire(x,y,z,1+math.random()*4) endend
      8. function updateLastWaterLevel(level) last_update_time = getTickCount() last_update_level = levelend
      9. function raiseWater(timeslice) local time_diff = getTickCount()-last_update_time local level = last_update_level+time_diff*getLavaRiseSpeed() setWaterLevel(w1,level) setWaterLevel(w2,level) setWaterLevel(w3,level) setWaterLevel(w4,level)end
      10. function getLavaRiseSpeed() return getElementData(resourceRoot,"risespeed")end



      lavaflood_c (clientseitig eintragen)

      LUA-Quellcode

      1. script_serverside = true
      2. function initLavaFlood() prev_min_duration = getMinuteDuration() prev_weather = {getWeather()} prev_sky_gradient = {getSkyGradient()} prev_far_clip_dist = getFarClipDistance() prev_fog_dist = getFogDistance() prev_heat_haze = {getHeatHaze()} prev_water_color = {getWaterColor()} prev_wave_height = getWaveHeight() setMinuteDuration(0x7FFFFFFF) setWeather(17) setSkyGradient(255,96,0,255,96,0) setFarClipDistance(200) setFogDistance(-20) setHeatHaze(128,0,12,18,65,80,80,95,true) setWaterColor(255,128,0,255) setWaterLevel(-1000) setWaveHeight(0) lava_level = 0
      3. last_update_time = getTickCount() setTimer(raiseWater,1000,0)
      4. setLavaRiseSpeed(0)
      5. addEventHandler("onResourceStop",resourceRoot,uninitLavaFlood)endaddEventHandler("onResourceStart",resourceRoot,initLavaFlood)
      6. function uninitLavaFlood() if prev_min_duration and getMinuteDuration() == 0x7FFFFFFF then setMinuteDuration(prev_min_duration) end
      7. local w1,w2 = getWeather() if w1 == 17 and not w2 then setWeather(prev_weather[1]) if prev_weather[2] then setWeatherBlended(prev_weather[2]) end end
      8. local sr1,sg1,sb1,sr2,sg2,sb2 = getSkyGradient() if sr1 == 255 and sg1 == 96 and sb1 == 0 and sr2 == 255 and sg2 == 96 and sb2 == 0 then if prev_sky_gradient[1] then setSkyGradient(unpack(prev_sky_gradient)) else resetSkyGradient() end end
      9. if getFarClipDistance() == 200 then if prev_far_clip_dist then setFarClipDistance(prev_far_clip_dist) else resetFarClipDistance() end end
      10. if getFogDistance() == -20 then if prev_fog_dist then setFogDistance(prev_fog_dist) else resetFogDistance() end end
      11. local hh1,hh2,hh3,hh4,hh5,hh6,hh7,hh8,hh9 = getHeatHaze() if hh1 == 128 and hh2 == 0 and hh3 == 12 and hh4 == 18 and hh5 == 65 and hh6 == 80 and hh7 == 80 and hh8 == 95 and hh9 == true then if prev_heat_haze[1] then setHeatHaze(unpack(prev_heat_haze)) else resetHeatHaze() end end
      12. local wr,wg,wb,wa = getWaterColor() if wr == 255 and wg == 128 and wb == 0 and wa == 255 then if prev_water_color[1] then setWaterColor(unpack(prev_water_color)) else resetWaterColor() end end
      13. resetWaterLevel()
      14. if getWaveHeight() == 0 then setWaveHeight(prev_wave_height) endend
      15. function raiseWater() local this_time = getTickCount() setLavaLevel(getLavaLevel()+(this_time-last_update_time)*getLavaRiseSpeed()) last_update_time = this_timeend
      16. -----------------------------------------------
      17. function getLavaLevel() return lava_levelend
      18. function setLavaLevel(level) level = tonumber(level) if not level then return false end lava_level = level triggerClientEvent("lavaflood:updateWaterLevel",root,level) return trueend
      19. function getLavaRiseSpeed() return getElementData(resourceRoot,"risespeed")end
      20. function setLavaRiseSpeed(speed) speed = tonumber(speed) if not speed then return false end setElementData(resourceRoot,"risespeed",speed) return trueend
      Alles anzeigen



      lavaflood_s (serverseitig eintragen)



      Befehle : /lavaspeed speed --setzt die schnelligkeit der lavalacke
      /lavalevel lvl --setzt die lavawellenhöhe fest

      Screenshot:






      mfg

      PartisaN



      [youtube]https://www.youtube.com/watch?v=Xsgii8NCgKk[/youtube]

    • Da ich mich grade ein wenig mit dem "normalen" Lua beschäftige:

      LUA-Quellcode

      1. pw = "abcdhah"
      2. for i = 32, 255, 1 do
      3. if i < 49 or i > 57 and i < 65 or i > 95 and i < 97 or i > 122 then
      4. if string.find (pw, string.char (i), 1, true) then
      5. print (string.char (i) .. " wurde gefunden.")
      6. break
      7. elseif i == 255 and not string.find (pw, string.char (i), 1, true) then
      8. print ("Nichts gefunden.")
      9. end
      10. end
      11. end
      Alles anzeigen

      Es sucht nach ASCII Zeichen die nicht: A..Z oder a..z oder 0..9 sind. Ideal um Passwörter zu überprüfen.


      LUA-Quellcode

      1. zeichen = {"!", "§", "$", "%", "&", "/", "(", ")", "=", "?", "#", "'", "*", "-", "+"}
      2. pw = "bc3/23a"
      3. if string.len (pw) >= 6 and string.len (pw) <= 16 then
      4. for i, k in pairs (zeichen) do
      5. if string.find (pw, k, 1, true) then
      6. return false
      7. elseif #zeichen == i and not string.find (pw, k, 1 , true) then
      8. return true
      9. end
      10. end
      11. else
      12. print ("Das PW muss mind. 6 Zeichen beeinhalten und max. 16 Zeichen haben.")
      13. end
      Alles anzeigen

      Sucht nach Zeichen die in der Tabelle enthalten sind. Außerdem überprüft es die Länge.

      LUA-Quellcode

      1. num = "-A1"
      2. if tonumber (num) ~= nil then
      3. return math.abs (num)
      4. else
      5. return false
      6. end

      Überprüft ob der Wert einer Variable eine Zahl ist. Außerdem werden negative Zahlen in postive umgewandelt.
      Gut für Bankautomaten.

      LUA-Quellcode

      1. function isNumber (value)
      2. if tonumber (value) ~= nil then
      3. return true
      4. else
      5. return false
      6. end
      7. end

      Mit isNumber (der zu prüfende Wert) kann man überprüfen ob es sich bei dem Wert um eine Zahl handelt.
      Völlig egal ob negativ oder positiv.

      Bsp:

      LUA-Quellcode

      1. value = "12342342a"
      2. if isNumber (value) then
      3. print ("Zahl")
      4. else
      5. print ("keine Zahl")
      6. end

      Auswurf: keine Zahl

      Dieser Beitrag wurde bereits 11 mal editiert, zuletzt von Shape ()

    • Eine riesen Blackliste: Vorsich unanständige Wörter enthalten
      Spoiler anzeigen
      blacklist = {
      "analdrilling",
      "offer",
      "offers",
      "cheap",
      "buy",
      "tramadol",
      "20six",
      "ndsfrwudG",
      "Tadalafil",
      "hosting",
      "avacor",
      "gation",
      "ruptcy",
      "obli",
      "morta",
      "remoV",
      "fffd5",
      "ffffd5",
      "Wavefrt",
      "Cialis",
      "eyebrow-upper-left-corner",
      "B0000AZJVC",
      "right-topnav-default-2",
      "edit1",
      "display-variation",
      "erection",
      "wvvvvv",
      "mpage.jp",
      "20six.de",
      "o o o o o o o o o o o o o",
      "aasgeier",
      "abspritzer",
      "sdfds",
      "ackerfresse",
      "affenarsch",
      "affenhirn",
      "affenkotze",
      "afterlecker",
      "aktivex.info",
      "almosenarsch",
      "amazing",
      "am-sperma-riecher",
      "anal*",
      "analadmiral",
      "analbesamer",
      "analbohrer",
      "analdrill",
      "analentjungferer",
      "analerotiker",
      "analfetischist",
      "analförster",
      "anal-frosch",
      "analnegerdildo",
      "analratte",
      "analritter",
      "aok-chopper",
      "armleuchter",
      "arsch",
      "arschaufreißer",
      "arschbackenschänder",
      "arschbesamer",
      "ärsche",
      "arschentjungferer",
      "arschficker",
      "arschgeburt",
      "arschgefickte gummifotze",
      "arschgeige",
      "arschgesicht",
      "arschhaarfetischist",
      "arschhaarrasierer",
      "arschhöhlenforscher",
      "arschkrampe",
      "arschkratzer",
      "arschlecker",
      "arschloch",
      "arschlöcher",
      "arschmade",
      "arschratte",
      "arschzapfen",
      "arsebandit",
      "arsehole",
      "arsejockey",
      "arselicker",
      "arsenuts",
      "arsewipe",
      "assel",
      "assfuck",
      "assfucking",
      "assgrabber",
      "asshol",
      "asshole",
      "asshole",
      "assi",
      "assrammer",
      "assreamer",
      "asswipe",
      "astlochficker",
      "auspufflutscher",
      "bad motherfucker",
      "badass",
      "badenutte",
      "bananenstecker",
      "bastard",
      "bastard",
      "bauernschlampe",
      "beating the meat",
      "beef curtains",
      "beef flaps",
      "behindis",
      "bekloppter",
      "muttergeficktes",
      "beklopter",
      "bettnässer",
      "******er",
      "******er",
      "bettpisser",
      "bettspaltenficker",
      "biatch",
      "bimbo",
      "bitch",
      "bitches",
      "bitchnutte",
      "bitsch",
      "bizzach",
      "blechfotze",
      "blödmann",
      "blogspoint",
      "blow job",
      "bohnenfresser",
      "boob",
      "boobes",
      "boobie",
      "boobies",
      "boobs",
      "booby",
      "boy love",
      "breasts",
      "brechfurz",
      "bückfleisch",
      "bückstück",
      "bückvieh",
      "buggery",
      "bullensohn",
      "bullshit",
      "bummsen",
      "bumsen",
      "bumsklumpen",
      "buschnutte",
      "busty",
      "butt pirate",
      "buttfuc",
      "buttfuck",
      "buttfucker",
      "buttfucking",
      "carpet muncher",
      "carpet munchers",
      "carpetlicker",
      "carpetlickers",
      "chausohn",
      "clitsuck",
      "clitsucker",
      "clitsucking",
      "cock",
      "cock sucker",
      "cockpouch",
      "cracka",
      "crap",
      "craper",
      "crapers",
      "crapping",
      "craps",
      "cunt",
      "cunt",
      "cunts",
      "dachlattengesicht",
      "dackelficker",
      "dickhead",
      "dicklicker",
      "diplomarschloch",
      "doofi",
      "douglette",
      "drecksack",
      "drecksau",
      "dreckschlitz",
      "dreckschüppengesicht",
      "drecksfotze",
      "drecksmösendagmar",
      "drecksnigger",
      "drecksnutte",
      "dreckspack",
      "dreckstürke",
      "dreckvotze",
      "dumbo",
      "dummschwätzer",
      "dumpfbacke",
      "dünnpfifftrinker",
      "eichellecker",
      "eierkopf",
      "eierlutscher",
      "eiswürfelpisser",
      "ejaculate",
      "entenfisterer",
      "epilepi",
      "epilepis",
      "epileppis",
      "fagette",
      "fagitt",
      "fäkalerotiker",
      "faltenficker",
      "fatass",
      "ferkelficker",
      "ferkel-ficker",
      "fettarsch",
      "fettsack",
      "fettsau",
      "feuchtwichser",
      "fick",
      "fick*",
      "fickarsch",
      "fickdreck",
      "ficken",
      "ficker",
      "fickfehler",
      "fickfetzen",
      "fickfresse",
      "fickfrosch",
      "fickfucker",
      "fickgelegenheit",
      "fickgesicht",
      "fickmatratze",
      "ficknudel",
      "ficksau",
      "fickschlitz",
      "fickschnitte",
      "fickschnitzel",
      "fingerfuck",
      "fingerfucking",
      "fisch-stinkender hodenfresser",
      "fistfuck",
      "fistfucking",
      "flachtitte",
      "flussfotze",
      "fotze",
      "fotzenforscher",
      "fotzenfresse",
      "fotzenknecht",
      "fotzenkruste",
      "fotzenkuchen",
      "fotzenlecker",
      "fotzenlöckchen",
      "fotzenpisser",
      "fotzenschmuser",
      "fotzhobel",
      "frisösenficker",
      "frisösenfotze",
      "fritzfink",
      "froschfotze",
      "froschfotzenficker",
      "froschfotzenleder",
      "****",
      "fucked",
      "fucker",
      "fucker",
      "fucking",
      "fuckup",
      "fudgepacker",
      "futtgesicht",
      "gay lord",
      "geilriemen",
      "gesichtsfotze",
      "göring",
      "großmaul",
      "gummifotzenficker",
      "gummipuppenbumser",
      "gummisklave",
      "hackfresse",
      "hafensau",
      "hartgeldhure",
      "heil hitler",
      "hi hoper",
      "hinterlader",
      "hirni",
      "hitler",
      "hodenbeißer",
      "hodensohn",
      "homo",
      "hosenpisser",
      "hosenscheißer",
      "hühnerficker",
      "huhrensohn",
      "hundeficker",
      "hundesohn",
      "hurenlecker",
      "hurenpeter",
      "hurensohn",
      "hurentocher",
      "idiot",
      "idioten",
      "itakker",
      "ittaker",
      "jack off",
      "jackass",
      "jackshit",
      "jerk off",
      "jizz",
      "judensau",
      "kackarsch",
      "kacke",
      "kacken",
      "kackfass",
      "kackfresse",
      "kacknoob",
      "kaktusficker",
      "kanacke",
      "kanake",
      "kanaken",
      "kanaldeckelbefruchter",
      "kartoffelficker",
      "kinderficken",
      "kinderficker",
      "kinderporno",
      "kitzler fresser",
      "klapposkop",
      "klolecker",
      "klötenlutscher",
      "knoblauchfresser",
      "konzentrationslager",
      "kotgeburt",
      "kotnascher",
      "kümmeltürke",
      "kümmeltürken",
      "lackaffe",
      "lebensunwert",
      "lesbian",
      "lurchi",
      "lustbolzen",
      "lutscher",
      "magerschwanz",
      "manwhore",
      "masturbate",
      "meat puppet",
      "missgeburt",
      "mißgeburt",
      "mistsau",
      "miststück",
      "mitternachtsficker",
      "mohrenkopf",
      "mokkastübchenveredler",
      "mongo",
      "möse",
      "mösenficker",
      "mösenlecker",
      "mösenputzer",
      "möter",
      "mother fucker",
      "mother fucking",
      "motherfucker",
      "muschilecker",
      "muschischlitz",
      "mutterficker",
      "nazi",
      "nazis",
      "neger",
      "nigga",
      "nigger",
      "niggerlover",
      "niggers",
      "niggerschlampe",
      "nignog",
      "nippelsauger",
      "nutte",
      "nuttensohn",
      "nuttenstecher",
      "nuttentochter",
      "ochsenpimmel",
      "ölauge",
      "oral sex",
      "penis licker",
      "penis licking",
      "penis sucker",
      "penis sucking",
      "penis",
      "peniskopf",
      "penislecker",
      "penislutscher",
      "penissalat",
      "penner",
      "pferdearsch",
      "phentermine",
      "pimmel",
      "pimmelkopf",
      "pimmellutscher",
      "pimmelpirat",
      "pimmelprinz",
      "pimmelschimmel",
      "pimmelvinni",
      "pindick",
      "piss off",
      "piss",
      "pissbirne",
      "pissbotte",
      "pisse",
      "pisser",
      "pissetrinker",
      "pissfisch",
      "pissflitsche",
      "pissnelke",
      "polacke",
      "polacken",
      "poop",
      "popellfresser",
      "popostecker",
      "popunterlage",
      "porn",
      "porno",
      "pornografie",
      "pornoprengel",
      "pottsau",
      "prärieficker",
      "prick",
      "quiff",
      "randsteinwichser",
      "rasierte votzen",
      "rimjob",
      "rindsriemen",
      "ritzenfummler",
      "rollbrooden",
      "roseten putzer",
      "roseten schlemmer",
      "rosettenhengst",
      "rosettenkönig",
      "rosettenlecker",
      "rosettentester",
      "sackfalter",
      "sackgesicht",
      "sacklutscher",
      "sackratte",
      "saftarsch",
      "sakfalter",
      "schamhaarlecker",
      "schamhaarschädel",
      "schandmaul",
      "scheisse",
      "scheisser",
      "scheissgesicht",
      "scheisshaufen",
      "scheißhaufen",
      "schlammfotze",
      "schlampe",
      "schleimmöse",
      "schlitzpisser",
      "schmalspurficker",
      "schmeue",
      "schmuckbert",
      "schnuddelfresser",
      "schnurbeltatz",
      "schrumpelfotze",
      "schwanzlurch",
      "schwanzlutscher",
      "schweinepriester",
      "schweineschwanzlutscher",
      "schwuchtel",
      "schwutte",
      "sex",
      "shiter",
      "shiting",
      "shitlist",
      "shitomatic",
      "shits",
      "shitty",
      "shlong",
      "shut the fuckup",
      "sieg heil",
      "sitzpisser",
      "skullfuck",
      "skullfucker",
      "skullfucking",
      "slut",
      "smegmafresser",
      "spack",
      "spacko",
      "spaghettifresser",
      "spastard",
      "spasti",
      "spastis",
      "spermafresse",
      "spermarutsche",
      "spritzer",
      "stinkschlitz",
      "stricher",
      "suck my cock",
      "suck my dick",
      "threesome",
      "tittenficker",
      "tittenspritzer",
      "titties",
      "titty",
      "tunte",
      "untermensch",
      "vagina",
      "vergasen",
      "viagra",
      "volldepp",
      "volldeppen",
      "vollhorst",
      "vollidiot",
      "vollpfosten",
      "vollspack",
      "vollspacken",
      "vollspasti",
      "vorhaut",
      "votze",
      "votzenkopf",
      "wanker",
      "wankers",
      "weichei",
      "whoar",
      "whore",
      "wichsbart",
      "wichsbirne",
      "wichser",
      "wichsfrosch",
      "wichsgriffel",
      "wichsvorlage",
      "wickspickel",
      "wixa",
      "wixen",
      "wixer",
      "wixxer",
      "wixxxer",
      "wixxxxer",
      "wurstsemmelfresser",
      "yankee",
      "zappler",
      "zyclon b",
      "zyklon b",
      "x x x"
      }


      Wollte ein Blacklist System bauen das jeglichen Chatverkehr überprüft. Allerdings sind das soviele Wörter das der Server in die Knie gehen würde.

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Shape ()

    • Dieses Script ist nützlich, da sich Objekte langsamer bewegen, wenn man den Command nochmal eingibt, während sich das Objekt noch bewegt. In diesem Fall wird abgefragt, ob sich das Objekt bewegt. Wenn es sich bewegt, wird ein Teil der Funktion nicht ausgeführt.

      LUA-Quellcode

      1. gate = createObject(id, x, y, z, rx, ry, rz)
      2. gatestatus = 0
      3. gatemoving = 0
      4. function gate_open_close()
      5. if gatemoving == 0 then
      6. if gatestatus == 0 then
      7. moveObject(gate, timeint, x, y, z, rx, ry, rz)
      8. gatestatus = 1
      9. gatemoving = 1
      10. setTimer(
      11. function()
      12. gatemoving = 0
      13. end
      14. , timeint, 1 , 0)
      15. elseif gatestatus == 1 then
      16. moveObject(gate, timeint, x, y, z, rx, ry, rz)
      17. gatestatus = 0
      18. gatemoving = 1
      19. setTimer(
      20. function()
      21. gatemoving = 0
      22. end
      23. , timeint, 1 , 0)
      24. end
      25. end
      26. end
      27. addCommandHandler("gate", gate_open_close)
      Alles anzeigen


      VG
      Die deutsche Sprache ist Freeware.
      Das heißt, du darfst sie uneingeschränkt nutzen. ABER(!) die deutsche Sprache ist NICHT(!) Open Source.
      Das heißt, du darfst sie NICHT(!) nach deinen Vorstellungen verändern!

      Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von [BG]Tim ()

    • Font-Größe richtig anpassen

      Dieser kleine Codeschnipsel ist dafür da, die Größe von selbst erstellten Fonts anzupassen:

      LUA-Quellcode

      1. width, height = guiGetScreenSize()
      2. player_screen = width * height
      3. screen = 1440 * 900 -- größte Auflösung
      4. screen = screen/100 --dreisatz = 1%
      5. player_screen = player_screen/screen -- die Prozentzahl vom Spieler Bildschirm im Vergleich mit der größten Auflösung
      6. size = 26/100*player_screen -- 26 ist die fontgröße bei einer Bildschirmauflösung von screen = 1440 * 900
      7. bt_font_big = guiCreateFont( "11S0BLT_.ttf", size )


      Folgender Effekt wird damit erzielt:
      Bei einer großen Bildschirm-auflösung wird der Text größer angezeigt und bei einer kleinen Auflösung kleiner angezeigt.
      ==> Die größe ist nun relativ zur Auflösung

      So wäre es falsch:

      LUA-Quellcode

      1. bt_font_big = guiCreateFont( "11S0BLT_.ttf", 26)


      Hier wäre die schriftgröße zwar auf 1440 * 900 passend aber auf einer kleinen Auflösung wie 800*600 viiieeel zu groß...

      Ich hoffe ihr habt den Sinn des Ganzen verstanden.

      MfG Dead

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Deadman ()

    • LUA-Quellcode

      1. local theGate = createObject(ID,x,y,z,rx,ry,rz)local downornot = false
      2. function adminbase ( player )
      3. x,y,z = getElementPosition ( player )
      4. x1,y1,z1 = getElementPosition ( theGate )
      5. if getDistanceBetweenPoints3D ( x,y,z,x1,y1,z1) < 12 then
      6. -- User = ..Phil..
      7. if downornot == false then
      8. if getPlayerName( player ) == "..Phil.." then
      9. moveObject( theGate , 2000 , x,y,z,rx,ry,rz)
      10. downornot = true
      11. else
      12. moveObject ( theGate , 2000, x,y,z,rx,ry,rz)
      13. downornot = false
      14. end
      15. end
      16. end
      17. end
      18. addCommandHandler("move",adminbase)
      Alles anzeigen



      Bei dem getPlayerName ( player ) == "..Phil.." tragt ihr euren Namen ein ( in den " " )

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von ..Phil.. ()

    • Teleport Marker zwischen den Städten

      LUA-Quellcode

      1. --Bahnhof -- Strassenseite -- Fences -- [ fenceshit2 ]
      2. createObject ( 984, -2001, 170.60000610352, 27.299999237061, 0, 0, 359.75 )
      3. createObject ( 984, -2001, 157.80000305176, 27.299999237061, 0, 0, 359.74731445313 )
      4. createObject ( 984, -2001, 145, 27.299999237061, 0, 0, 359.74731445313 )
      5. createObject ( 984, -2001, 132.19999694824, 27.299999237061, 0, 0, 359.74731445313 )
      6. createObject ( 984, -2001, 127.40000152588, 27.299999237061, 0, 0, 359.74731445313 )
      7. -- Marker -- bhfmarker,lsmarker,lvmarker
      8. local sfmarker = createMarker( -1996.6999511719,167.30000305176,26.799999237061, "cylinder" , 2, 0, 255, 0)
      9. local lsmarker = createMarker( 2487.5 , -1667.9000244141 , 12.300000190735, "cylinder" , 2, 0, 255, 0)
      10. local lvmarker = createMarker( 2001.7275390625 , 1543.994140625 , 12.5859375 , "cylinder" , 2, 0 , 255 , 0 )
      11. --Teleport -- To Markers
      12. function sfmarker_teleport( source )
      13. outputChatBox("Willkommen in Los Santos !",source,0,255,0)
      14. setElementPosition( source , 2487.5 , -1665.9000244141 , 13.300000190735)
      15. end
      16. addEventHandler("onMarkerHit", sfmarker ,sfmarker_teleport)
      17. function lsmarker_teleport( source )
      18. outputChatBox("Willkommen zurück in San Fierro !",source,0,255,0)
      19. setElementPosition( source , -1996.6999511719,162.30000305176,28.799999237061)
      20. end
      21. addEventHandler("onMarkerHit",lsmarker,lsmarker_teleport)
      22. function playerPosition(source)
      23. local x,y,z = getElementPosition(source)
      24. posx = x
      25. posy = y
      26. posz = z
      27. outputChatBox(" " ..posx.. " , " ..posy.. " , " ..posz, source , 0 , 255 ,0 )
      28. end
      29. addCommandHandler("pos", playerPosition)
      30. function lvmarker_information_teleport(source)
      31. outputChatBox("Verwende [/town sf] um nach San Fierro zu kommen!",source,255,0,0)
      32. outputChatBox("Verwende [/town ls] um nach Los Santos zu kommen!",source,255,0,0)
      33. outputChatBox("Verwende [/town lv] um zurück nach Las Venturas zu kommen!",source,255,0,0)
      34. end
      35. addEventHandler("onMarkerHit",lvmarker,lvmarker_information_teleport)
      36. function lvmarker_teleport_choice(player,cmd,town)
      37. if town == "sf" then
      38. setElementPosition( player , -1996.6999511719,162.30000305176,28.799999237061)
      39. outputChatBox("Willkommen zurück in San Fierro !",player,0,255,0)
      40. elseif town == "ls" then
      41. setElementPosition( player , 2487.5 , -1665.9000244141 , 13.300000190735)
      42. outputChatBox("Willkommen in Los Santos !",player,0,255,0)
      43. elseif town == "lv" then
      44. setElementPosition(player, 2005.7275390625 , 1543.994140625 , 12.5859375)
      45. outputChatBox("Willkommen in Las Venturas !",player,0,255,0)
      46. elseif town == nil then
      47. outputChatBox("Verfügbare Standorte [ sf , ls , lv ]!",player,0,0,255)
      48. end
      49. end
      50. addCommandHandler("town",lvmarker_teleport_choice)
      51. function cleartextafterstopresource()
      52. for i = 1,100 do
      53. outputChatBox(" ")
      54. end
      55. end
      56. addEventHandler("onResourceStop",getRootElement(),cleartextafterstopresource)
      57. [lua]
      Alles anzeigen

      [/lua]
      Dieses Script beinhaltet sinnlos rein gescriptete fenceshit3 (xD) , welches sehr sehr sinnlos ist :P
      Dann gibt es 3 Marker

      LUA-Quellcode

      1. local lsmarker , local sfmarker und local lv marker

      Diesen 3 Markern sind verschiedene Funktionen zugewiesen SFMarker( Am BHF in SF ) Teleport nach LS [Ganton] und umgekehrt.
      Der LV Marker zeigt

      LUA-Quellcode

      1. outputChatBox("Verwende [/town sf] um nach San Fierro zu kommen!",source,255,0,0)
      2. outputChatBox("Verwende [/town ls] um nach Los Santos zu kommen!",source,255,0,0)
      3. outputChatBox("Verwende [/town lv] um zurück nach Las Venturas zu kommen!",source,255,0,0)

      Sobald man den Marker betritt.
      Die Funktionen playerPosition & cleartextafterstopresource habe ich nebenbei eingefügt. Mit dem Grund, dass ich abundzu die x,y,z Koordinaten manchmal sehr gut gebrauchen kann und damit ich nach der /restart RESOURCE funktion eine Bessere übersicht über den Chat habe. Falls ich eine ouputChatBox verwende. Welche ich auch in diesem Fall verwende


      mfg
    • Habe mal wieder was gutes :D

      Clientseitig Versteht sich !

      LUA-Quellcode

      1. local x,y = guiGetScreenSize()
      2. function isCursorOnElement(x,y,w,h)
      3. local mx,my = getCursorPosition ()
      4. local fullx,fully = guiGetScreenSize()
      5. cursorx,cursory = mx*fullx,my*fully
      6. if cursorx > x and cursorx < x + w and cursory > y and cursory < y + h then
      7. return true
      8. else
      9. return false
      10. end
      11. end
      12. function DXcreateButton ( title,x,y,w,h)
      13. thistimeRnd = math.random(9099999)
      14. thistimeRnd = {}
      15. thistimeRnd["dxColor"] = tocolor(120,120,120,180)
      16. addEventHandler("onClientRender",getRootElement(),
      17. function()
      18. dxDrawRectangle ( x-1, y-1, w+2, h+2, tocolor ( 1, 1, 1, 150 ) )
      19. dxDrawRectangle ( x,y,w,h,thistimeRnd["dxColor"])
      20. dxDrawText (title,x+w/2,y+h/2, x+w/2,y+h/2, tocolor ( 255, 255, 255, 255 ), 1, "default" ,"center","center")
      21. end)
      22. addEventHandler("onClientClick",getRootElement(),
      23. function(button,state)
      24. if (button == "left" and state == "down") and (isCursorOnElement(x,y,w,h) == true) then
      25. thistimeRnd["dxColor"] = tocolor(150,200,150,180)
      26. return "clicked"
      27. else
      28. thistimeRnd["dxColor"] = tocolor(150,150,150,180)
      29. end
      30. end)
      31. addEventHandler("onClientCursorMove",getRootElement(),
      32. function()
      33. if (isCursorOnElement(x,y,w,h) == true) then
      34. thistimeRnd["dxColor"] = tocolor(150,150,150,180)
      35. return "entered"
      36. else
      37. thistimeRnd["dxColor"] = tocolor(120,120,120,180)
      38. end
      39. end)
      40. end
      Alles anzeigen


      damit kann man einen Button erstellen der auf dxReagiert :D,
      wenn er gepresst ist gibt er "clicked" wieder wenn er makiert ist gibt er "entered" wieder !

      So kann man ihn erstellen :

      LUA-Quellcode

      1. DXcreateButton (string text,int x,int y,int w,int h)


      MfG