猫史档案馆


用py做kt还是算了……

用户:水翎稞水翎稞查看:0 回复:0 评论:0 创建时间:2021-11-05T21:15:12


importjson num=0 classGame: globalnum def__init__(self,name): self.name=name self.stjson={"work_business":0,"work_source_label":1,"hidden_toolbox":{"toolbox":[],"blocks":[]},"version":16,"application_version":"3.7.25","work_type":"KITTEN","width":620,"height":900,"type":1,"project_name":self.name,"theatre":{"current_entity":"","current_scene":"","scenes_order":[],"scenes":{},"actors":{},"styles":{},"style_collections":{}},"variables":{},"variable_order":[],"cloud_variables":{},"audio":{},"audio_order":[],"matrix":{},"models":{},"toolbox":{"block_ai_classification":'false',"block_ai_game":'false',"block_hardware_arduino":'false',"block_hardware_weeemake":'false',"block_hardware_microbit":'false',"block_hardware_ideali":'false',"block_hardware_ideali_asr":'false',"block_hardware_ideali_喵artcar":'false',"block_hardware_grovezero":'false',"cloud_variable":'false',"cloud_list":'false',"advanced":'false',"camera":'false',"video":'false',"wood":'false',"cognitive":'false',"ai_lab":'false',"physics":'false'},"toolbox_order":["event","control","action","appearance","audio","pen","sensing","operator","data","procedure","physic","ai","cloud_variable","advanced","hardware_arduino","hardware_weeemake","hardware_microbit","hardware_ideali","hardware_ideali_asr","hardware_ideali_喵artcar","hardware_grovezero","camera","video","wood","cognitive","ai_lab"],"hardware_type":"","is_partial":'false',"ai_lab":{}} self.screenList=[] defcreate_screen(self,scname,bgname,id,bgurl): sc=Screen(scname,bgname,id,bgurl) self.screenList.append(sc) ifself.stjson["theatre"]["current_entity"]=="": self.stjson["theatre"]["current_entity"]=id self.stjson["theatre"]["current_scene"]=id self.stjson["theatre"]["scenes_order"].append(id) self.stjson["theatre"]["scenes"][id]={"id":id,"current_style_id":f"{id}_1","name":bgname,"styles":[f"{id}_1"],"actors":self.screenList[-1].actors,"x":0,"y":0,"scale":100,"rotation":0,"rotation_type":0,"draggable":'false',"visible":'true',"screen_name":scname,"blocksXML":"<variables></variables>","workspace_offset":{"x":100,"y":50}} self.stjson["theatre"]["styles"][f"{id}_1"]={"id":f"{id}_1","name":f"{bgname}_1","url":bgurl,"cdn_url":bgurl} returnsc defdone(self): print(self.stjson) withopen(f"{self.name}.bcm","wb")asf: f.write(json.dumps(self.stjson).encode()) classScreen: globalnum def__init__(self,scname,bgname,id,bgurl): self.scname=scname self.bgname=bgname self.id=id self.actors=[] self.realactors=[] self.bgurl=bgurl defcreate_actor(self,g,name,x,y,id,url): ac=Actor(g,name,id,url) self.realactors.append(ac) g.stjson["theatre"]["scenes"][self.id]["actors"].append(id) g.stjson["theatre"]["actors"][id]={"id":id,"current_style_id":f"{name}_1","name":name,"styles":[f"{name}_1"],"x":x,"y":y,"scale":100,"rotation":0,"rotation_type":0,"draggable":'false',"visible":'true',"lock":'false',"blocksXML":"<variables></variables>","workspace_offset":{"x":100,"y":100}} g.stjson["theatre"]["styles"][f"{name}_1"]={"id":f'{name}_1',"name":name,"rotate_center":{"x":0,"y":0},"url":url,"cdn_url":url} returnac classActor: globalnum def__init__(self,g,name,id,url): self.name=name self.id=id self.url=url self.code=[] self.game=g; defaddCode(self,codes): self.code.append(codes) defok(self): globalnum self.codexml="<variables></variables>" self.jilu="" foriinself.code: self.jilu="" forjini: ifj=="start": num+=1 self.codexml+=f"<blocktype=\"start_on_click\"id=\"{num}\"inline=\"true\"visible=\"visible\"x=\"0\"y=\"0\">" self.jilu="start" self.codexml+="</block>" self.game.stjson["theatre"]["actors"][self.id]["blocksXML"]=self.codexml if__name__=="__main__": game=Game("test") sc1=game.create_screen("sc1","bg1","thbh","https://static.codemao.cn/kitten/ryJJqIKR7") sc2=game.create_screen("sc2","bg2","thb","https://static.codemao.cn/kitten/ryJJqIKR7") ac1=sc1.create_actor(game,"newjuese",100,-100,"act1","https://creation.codemao.cn/120/kitten/d2ViXzIwMDJfMTAwNDIyNDJfMF8xNjM1NjQ4OTkwOTI0XzQxM2E0YzU1") ac2=sc1.create_actor(game,"newjuese2",-100,100,"act2","https://creation.codemao.cn/120/kitten/d2ViXzIwMDJfMTAwNDIyNDJfMF8xNjM1NjQ4OTkwOTI0XzQxM2E0YzU1") ac1.addCode([ "start", ]) ac1.ok() game.done() 如果有人也有这样的想法,可以看看……      


回复

上一页1 页 / 共 0下一页