Compare commits

..

8 Commits

Author SHA1 Message Date
justuser 04011ffe15 Update 'README.md' 2023-04-20 16:59:28 +03:00
justuser 50c62c7ad8 Update 'README.md' 2023-04-20 16:56:18 +03:00
justuser31 b4721575aa Fix color code in example list 2023-04-20 15:59:43 +03:00
justuser31 7b45803a2c Update: add uploader, add cleaner, add black color and update color code 2023-04-20 15:59:04 +03:00
justuser31 01f0ce97c7 Add final message 2023-04-20 15:31:25 +03:00
justuser31 0082a7e8cc Update 2023-04-20 15:25:46 +03:00
justuser31 eba0ecbc0f Merge branch 'main' of ssh://ssh.dmcraft.online:2222/justuser/pxl_oboard 2023-04-19 23:00:18 +03:00
justuser31 84f3ea9383 Add image creator 2023-04-19 22:59:49 +03:00
3 changed files with 141 additions and 4 deletions
+8
View File
@@ -8,6 +8,14 @@ Super simple, super stupid.
## -------------------------------- ## --------------------------------
## >>>Рисование<<<: ## >>>Рисование<<<:
## Уровень: ламер
1. Скачать im_creator.py
2. Запустить через `python3 im_creator.py`
3. Нарисовать что-то.
4. Нажать кнопку "Upload" для загрузки рисунка на сервер.
5. Ждать надписи в консоли "DONE"
## Уровень: овнокодер
Вы можете написать свой скрипт на основе post.py или... Вы можете написать свой скрипт на основе post.py или...
1. Скачать bot.py 1. Скачать bot.py
2. Запрогроммировать свои инструкции для бота: 2. Запрогроммировать свои инструкции для бота:
+17 -3
View File
@@ -3,12 +3,21 @@ from time import sleep
def draw(cords): def draw(cords):
for i in range(len(cords)): for i in range(len(cords)):
sleep(0.6) sleep(0.2)
try:
payload = {'x': cords[i][1], 'y': cords[i][0], 'color': cords[i][2]}
except:
payload = {'x': cords[i][1], 'y': cords[i][0], 'color': "blue" }
payload = {'x': cords[i][1], 'y': cords[i][0], 'color': 'b'}
response = requests.post('http://pb.dmcraft.online', data=payload) response = requests.post('http://pb.dmcraft.online', data=payload)
print(response) print(response)
while str(response) != "<Response [200]>":
response = requests.post('http://pb.dmcraft.online', data=payload)
print("Retrying...")
print(response)
print("DONE!")
def linex(y, x1, x2): def linex(y, x1, x2):
res = [] res = []
for i in range(x1, x2+1): for i in range(x1, x2+1):
@@ -22,8 +31,13 @@ def liney(x, y1, y2):
return res return res
l = [[65, 86, 'red'], [66, 87, 'red'], [66, 86, 'red'], [66, 85, 'red'], [67, 86, 'red'], [89, 97, 'red'], [90, 98, 'red'], [90, 97, 'red'], [90, 96, 'red'], [91, 97, 'red'], [95, 77, 'black'], [96, 78, 'black'], [96, 77, 'black'], [96, 76, 'black'], [97, 77, 'black'], [107, 108, 'blue'], [108, 109, 'blue'], [108, 108, 'blue'], [108, 107, 'blue'], [109, 108, 'blue']]
draw(l)
#draw( liney(300, 300, 500) ) #draw( liney(300, 300, 500) )
draw(linex(500, 300, 500)) #draw(linex(500, 300, 500))
''' '''
xs = 180 xs = 180
+115
View File
@@ -0,0 +1,115 @@
from tkinter import *
####DRAW BLOCK
import requests
from time import sleep
def draw(cords):
for i in range(len(cords)):
sleep(0.2)
try:
payload = {'x': cords[i][1], 'y': cords[i][0], 'color': cords[i][2]}
except:
payload = {'x': cords[i][1], 'y': cords[i][0], 'color': "b" }
response = requests.post('http://pb.dmcraft.online', data=payload)
print(response)
while str(response) != "<Response [200]>":
response = requests.post('http://pb.dmcraft.online', data=payload)
print("Retrying...")
print(response)
print("!!!DONE!!!")
class PixelArt:
def __init__(self, master):
self.master = master
self.master.title("Pixel Art")
self.canvas = Canvas(self.master, width=128*12, height=128*12, bg="white")
self.canvas.pack(side=LEFT, padx=5, pady=5)
self.colors = ["red", "green", "blue", "white","black"]
self.current_color = "red"
self.button_frame = Frame(self.master)
self.button_frame.pack(side=LEFT, padx=5, pady=5)
self.export_button = Button(self.button_frame, text="Export", command=self.export_image)
self.export_button.pack(side=TOP, padx=5, pady=5)
self.button_frame.pack(side=LEFT, padx=5, pady=5)
self.export_button = Button(self.button_frame, text="Clean", command=self.clean_image)
self.export_button.pack(side=TOP, padx=5, pady=5)
self.button_frame.pack(side=LEFT, padx=5, pady=5)
self.export_button = Button(self.button_frame, text="Upload", command=self.upload_image)
self.export_button.pack(side=TOP, padx=5, pady=5)
self.color_buttons = []
for color in self.colors:
button = Button(self.button_frame, bg=color, width=3, height=1, command=lambda c=color: self.set_color(c))
button.pack(side=TOP, padx=5, pady=5)
self.color_buttons.append(button)
for i in range(129):
self.canvas.create_line(i*12, 0, i*12, 128*12, fill="white")
self.canvas.create_line(0, i*12, 128*12, i*12, fill="white")
self.canvas.bind("<Button-1>", self.draw_pixel)
def draw_pixel(self, event):
x = int(event.x / 12)
y = int(event.y / 12)
self.canvas.create_rectangle(x*12, y*12, x*12 + 12, y*12 + 12, fill=self.current_color)
def set_color(self, color):
self.current_color = color
def clean_image(self):
items = self.canvas.find_all()
for item in items:
self.canvas.delete(item)
def upload_image(self):
pixel_data = []
for i in range(128):
for j in range(128):
color = self.canvas.itemcget(self.canvas.find_closest(i*12+6, j*12+6), "fill")
if color != "white":
match self.colors.index(color):
case 0:
color = "red"
case 1:
color = "green"
case 2:
color = "blue"
case 3:
color = "black"
pixel_data.append([i, 127-j, color])
print("!!!START UPLOAD!!!")
draw(pixel_data)
def export_image(self):
pixel_data = []
for i in range(128):
for j in range(128):
color = self.canvas.itemcget(self.canvas.find_closest(i*12+6, j*12+6), "fill")
if color != "white":
match self.colors.index(color):
case 0:
color = "red"
case 1:
color = "green"
case 2:
color = "blue"
case 3:
color = "black"
pixel_data.append([i, 127-j, color])
f = open('out.txt', 'w')
f.write(str(pixel_data))
f.close()
if __name__ == "__main__":
root = Tk()
pixel_art = PixelArt(root)
root.mainloop()