Corona Geschrieben 1. Dezember 2013 Share Geschrieben 1. Dezember 2013 (bearbeitet) Hallo alle zusammen, ob ihr's nun wollt oder nicht: hier bin ich wieder. Nachdem ich mal etwas mehr Zeit im Alltag habe, habe ich wieder mal entschlossen Minecraft zu spielen, besonders Computercraft, und wollte endlich eine eigene API haben, mit der man Buttons ganz einfach und schnell erstellen und benutzen kann. Das hier ist dabei rausgekommen und naja, ich hoffe es kann von anderen auch genutzt werden --(C) Corona 2013 PLEASE DO NOT STEAL THIS CODE! function draw(button,side) xStart=button["x1"] xEnd=button["x2"] yStart=button["y1"] yEnd=button["y2"] fillColor=button["color"] x=xEnd-xStart y=yEnd-yStart textCentery=math.ceil(yStart+y/2) textCenterx=math.ceil((xStart+(x/2))-(string.len(button["text"])/2)) print("") print("Putting Text at y-Coordinates:"..textCentery) print("Putting Text at x-Coordinates:"..textCenterx) print("Drawing x:"..x) print("Drawing y:"..y) print("Draw Color:"..button["color"]) monitor=peripheral.wrap(side) monitor.setCursorPos(xStart,yStart) monitor.setBackgroundColor(fillColor) for j=1,y do for i=1,x do monitor.write(" ") end monitor.setCursorPos(xStart,yStart+j) end monitor.setCursorPos(textCenterx,textCentery) monitor.write(button["text"]) monitor.setBackgroundColor(colors.black) end function cls(side) local monitor=peripheral.wrap(side) monitor.setBackgroundColor(colors.black) monitor.clear() end function pressed(button,x,y) if (button["x1"]<=x) and (button["x2"]>=x) and (button["y1"]<=y) and (button["y2"]>=y) then return true else return false end end function changeColor(button,color) button["color"] = color draw(button) return button end function moveButton(button,newx1,newx2,newy1,newy2) button["x1"] = newx1 button["x2"] = newx2 button["y1"] = newy1 button["y2"] = newy2 draw(button) return button end und hier der Pastebin zu diesem Code, damit man es direkt in Computercraft mit pastebin get runterladen kann: P5kM0hgh Hier noch 2 Bilder im Anhang was ich damit gemacht habe Und der Code zu dem, was auf den Bildern zu sehen ist: os.loadAPI("buttonAPI") mon = peripheral.wrap("right") maxx,maxy = mon.getSize() local button1 = {x1 = 3,x2 = 23,y1 = 2,y2 = 16,state = false,rs = colors.white,text = "Boiler 1",color = colors.red} local button2 = {x1 = maxx-22,x2 = maxx-2,y1 = 2,y2 = 16,state = false,rs = colors.blue,text = "Boiler 2",color = colors.red} local button3 = {x1 = 3,x2 = 23,y1 = maxy-15,y2 = maxy-1,state = false,rs = colors.lime,text="Boiler 3",color = colors.red} local button4 = {x1 = maxx-22,x2 = maxx-2,y1 = maxy-15,y2 = maxy-1,state = false,rs = colors.red,text = "Boiler 4",color = colors.red} local buttons = {button1,button2,button3,button4} local outputs = {0,0,0,0} while true do buttonAPI.cls("right") for i=1,#buttons do buttonAPI.draw(buttons[i],"right") end rs.setBundledOutput("bottom",outputs[1]+outputs[2]+outputs[3]+outputs[4]) local ev,btn,x,y = os.pullEvent("monitor_touch") print(x) print(y) for i=1,#buttons do if buttonAPI.pressed(buttons[i],x,y) then print("triggered") if buttons[i]["state"] then outputs[i] = 0 buttons[i]["state"] = false buttons[i]["color"] = colors.red --button1 = buttonAPI.moveButton(button1,5,6,5,6) else outputs[i] = buttons[i]["rs"] buttons[i]["state"] = true buttons[i]["color"] = colors.lime end end end end bearbeitet 1. Dezember 2013 von Corona Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Biber Geschrieben 1. Dezember 2013 Share Geschrieben 1. Dezember 2013 Corona is back... Hamma *.* Beib aktiv LG Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
DaDesasta Geschrieben 6. Dezember 2013 Share Geschrieben 6. Dezember 2013 Corona is wieder da... ENDLICH war ganz schön ruhig ohne dich^^ Und bleib aktiv Beitrag á la Handy Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Biber Geschrieben 6. Dezember 2013 Share Geschrieben 6. Dezember 2013 Och DaDesasta sei doch mal nicht so. Corona schämt sich doch ._. Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Corona Geschrieben 6. Dezember 2013 Autor Share Geschrieben 6. Dezember 2013 Haha ist gut, wieder da zu sein Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden