daily pastebin goal
41%
SHARE
TWEET

Untitled

a guest Jan 29th, 2018 53 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. --[[
  2. /txt numer_tekstury strona -> teksturowanie
  3. /testelement -> wypisanie id tekstur
  4.  
  5. getAllObjects() -> odczyt tekstur, zapis jest w trakcie nakładania tekstury
  6. testElement() -> debug, sprawdzałem czy się zapisuje
  7.  
  8. nie pamiętam czy event czy timer odświeżał tekstury wszystkim (gdy gracz1 nałoży teksturę gracz2 domyślnie nie widzi jej, dlatego non-stop odczyt, da się to zrobić lepiej)
  9. ]]
  10.  
  11.  
  12.  
  13.  
  14. function txt(src,txts,side) --wiadomo raczej
  15.     if txts and side then
  16.         local path = "img/"..txts..".jpg"
  17.         outputChatBox(path)
  18.         local texture = dxCreateTexture(path)
  19.         local shader = dxCreateShader("shader.fx")
  20.         local ele = getElementByID(eleID)
  21.         dxSetShaderValue(shader, "DevTexture", texture)
  22.         outputChatBox(ele)
  23.         engineApplyShaderToWorldTexture(shader, side, ele,true)
  24.         if side == "A" then
  25.             setElementData(ele,"dev25tex1",txts)
  26.             getAllObjects()
  27.         else if(side == "B") then
  28.             setElementData(ele,"dev25tex2",txts)
  29.             getAllObjects()
  30.         end
  31.     else
  32.         outputChatBox("podaj id txt i strone (\"A\" albo \"B\"")
  33.     end
  34. end
  35. function getid ( btn, state, sX, sY, wX, wY, wZ, clickedElement ) --dany element
  36.     eleID = getElementID(clickedElement)
  37. end
  38. addCommandHandler("txt",txt)
  39. addEventHandler("onClientClick",getRootElement(), getid)
  40. function testElement() --debug
  41.     local txtID1 = getElementData(getElementByID(eleID),"dev25tex1")
  42.     local txtID2 = getElementData(getElementByID(eleID),"dev25tex2")
  43.     outputChatBox("ID TEKSTURY A: "..txtID1)
  44.     outputChatBox("ID TEKSTURY B: "..txtID2)
  45. end
  46. addCommandHandler("testelement",testElement)
  47.  
  48. function getAllObjects(res) --wczytanie zapisanych / zastosowanych tekstur na obiekt
  49.     for _,obj in ipairs(getElementsByType("object")) do
  50.         local txtid = getElementData(obj,"dev25tex1")
  51.         if txtid then
  52.             local path = "img/"..txtid..".jpg"
  53.             local texture = dxCreateTexture(path)
  54.             local shader = dxCreateShader("shader.fx")
  55.             dxSetShaderValue(shader, "DevTexture", texture)
  56.             engineApplyShaderToWorldTexture(shader, "A", obj,true)
  57.         end
  58.     end
  59.     for _,obj in ipairs(getElementsByType("object")) do
  60.         local txtid = getElementData(obj,"dev25tex2")
  61.             if txtid then
  62.                 local path = "img/"..txtid..".jpg"
  63.                 local texture = dxCreateTexture(path)
  64.                 local shader = dxCreateShader("shader.fx")
  65.                 dxSetShaderValue(shader, "DevTexture", texture)
  66.                 engineApplyShaderToWorldTexture(shader, "B", obj,true)
  67.             end
  68.         end
  69. end
  70. addEventHandler ( "onClientElementStreamIn", root, getAllObjects ) --nie pamiętam które działało a które nie, i tak da się to zrobić lepiej xd
  71. setTimer(getAllObjects,1000,0)--nie pamiętam które działało a które nie, i tak da się to zrobić lepiej xd
RAW Paste Data
Pastebin PRO WINTER Special!
Get 40% OFF Pastebin PRO accounts!
Top