def openInjector_wx(): import wx app = wx.App(redirect=False) frame = wx.Frame(None, title="TTH Injector", size=(640, 400), style=wx.SYSTEM_MENU | wx.CAPTION | wx.CLOSE_BOX | wx.MINIMIZE_BOX) panel = wx.Panel(frame) button = wx.Button(parent=panel, id=-1, label="Inject", size=(50, 20), pos=(295, 0)) global textbox textbox = wx.TextCtrl(parent=panel, id=-1, pos=(20, 22), size=(600, 340), style=wx.TE_MULTILINE) frame.Bind(wx.EVT_BUTTON, __inject_wx, button) frame.Show() app.SetTopWindow(frame) textbox.AppendText(defaultText) threading.Thread(target=app.MainLoop).start()
def __init__(self): self.panra = 1 self.pwa = KeyboardButton.ascii_key("w") self.sano = Actor("HailPar.egg", {"Anaib": "Sbig-Armsjin"}) self.thago = threading.Thread(target=self.run) self.thago.start() self.sano.reparentTo(render)
def pollOnce(self): try: rlist = select.select([self.listenerSocket] + self.connections.keys(), [], [])[0] except: try: self.listenerSocket.fileno() except: self.notify.error('The listener socket is no longer valid!') for socket in self.connections.keys(): try: socket.fileno() socket.getpeername() except: del self.connections[socket] if socket in self.dispatchThreads: del self.dispatchThreads[socket] return if self.listenerSocket in rlist: self.handleNewConnection() for socket in rlist: connection = self.connections.get(socket) if connection is None: continue if socket in self.dispatchThreads: continue self.dispatchThreads[socket] = threading.Thread( target=self.dispatchThread, args=[socket]) self.dispatchThreads[socket].start()
def start_record(self): self.__rbtx.zerotcpforce(armname=self.__armname) def recorder(): while self.__flag: self.__force.append( self.__rbtx.getinhandtcpforce(armname=self.__armname)) self.__armjnts = self.motion_planner_x.get_armjnts() self.__info.append([self.__force, self.__armjnts, time.time()]) self.__plotflag = True time.sleep(.1) def plot(): fig = plt.figure(1) plt.ion() plt.show() plt.ylim((-10, 10)) while self.__ploton: if self.__plotflag: plt.clf() # print(len(self.__force)) force = [l[:3] for l in self.__force] torque = [l[3:] for l in self.__force] # distance = [np.linalg.norm(self.fixgoal - np.array(dis[1])) for dis in self.__tcp] x = [0.02 * i for i in range(len(force))] plt.xlim((0, max(x))) plt.subplot(211) plt.plot(x, force, label=["x", "y", "z"]) plt.legend("xyz", loc='upper left') plt.subplot(212) plt.plot(x, torque, label=["Rx", "Ry", "Rz"]) plt.pause(0.005) time.sleep(.1) plt.savefig(f"{time.time()}.png") pickle.dump(self.__info, open(self.f_name, "wb")) plt.close(fig) self.__thread_recorder = threading.Thread(target=recorder, name="recorder") self.__thread_recorder.start() self.__thread_plot = threading.Thread(target=plot, name="plot") self.__thread_plot.start() print("start finish")
def __init__(self, socket, handler): self.socket = socket self.dispatcher = ToontownRPCDispatcher(handler) self.socketLock = threading.Lock() self.readLock = threading.RLock() self.writeLock = threading.RLock() self.readBuffer = '' self.writeQueue = [] self.writeSemaphore = threading.Semaphore(0) self.writeThread = threading.Thread(target=self.__writeThread) self.writeThread.start()
def __init__(self, databaseFilePath): ShowBase.__init__(self) self.speed = 40 # Mouse and camera movement init self.mouseX_last = 0 self.mouseY_last = 0 self.rotateCamera = False self.move_z = 50 self.env = cEnvironment(self) self.env.CreateBasement() # to not be lost if there is nothing around self.env.SetupLights() self.env.SetupCamera() width = self.win.getProperties().getXSize() height = self.win.getProperties().getYSize() self.gui = cGUI(width, height, self.loader, visApp=self) self.databaseFilePath = databaseFilePath self.bakeReader = BakeReader(self.databaseFilePath) self.interaction = cInteraction(self) self.interaction.SetupKeys() self.interaction.SetupOnClick() self.taskMgr.add(self.update, "main loop") self.accept(self.win.getWindowEvent(), self.interaction.onWindowEvent) self.HTMObjects = {} self.allHTMobjectsCreated = False self.oneOfObjectsCreationFinished = False self.gfxCreationThread = threading.Thread( target=self.gfxCreationWorker, args=()) #---- self.iterationDataUpdate = False self.BuildStructure() # hand over this value to the gui to be able to validate user inputs # -1 because predictive cells are + 1 self.gui.cntIterations = self.bakeReader.cntIterations - 1 self.iteration = 0 self.initIterationLoaded = False self.autoRunIteration = 0
def start_producer_thread(self, thread_name, origin=None, variance=None): # print 'start producer thread', self.producer_thread logging.debug('start thread {0}'.format(thread_name)) # print 'in producer', origin, variance if origin: self.origin = origin if variance: self.variance = variance # print('cleared thread') if not self.producer_thread: self.producer_thread = threading.Thread(name=thread_name, target=self.producer) self.producer_thread.start() else: self.fake_data = yield_eye_data(self.origin, self.variance) self.base.taskMgr.add(self.get_fake_data_task, 'fake_eye')
def __init__(self): self.app = wx.App(redirect=False) self.frame = wx.Frame(None, title='Injector', size=(765, 325), style=wx.SYSTEM_MENU | wx.CAPTION | wx.MINIMIZE_BOX | wx.CLOSE_BOX | wx.RESIZE_BORDER) self.panel = wx.Panel(self.frame) self.buttonPanel = wx.Panel(self.panel) self.checkboxPanel = wx.Panel(self.panel) self.sizer = wx.BoxSizer(wx.VERTICAL) self.buttonSizer = wx.BoxSizer(wx.HORIZONTAL) self.checkboxSizer = wx.BoxSizer(wx.HORIZONTAL) self.injectBox = wx.TextCtrl(parent=self.panel, style=wx.TE_MULTILINE | wx.TE_RICH2) self.injectButton = wx.Button(parent=self.buttonPanel, size=(100, 50), label='Inject') self.pstatsBox = wx.CheckBox(parent=self.checkboxPanel, label='PStats') self.injectBox.SetLabel(DEFAULT_TEXT) self.injectBox.Bind(wx.EVT_KEY_DOWN, self.__keyDown) self.injectButton.Bind(wx.EVT_BUTTON, lambda event: self.__inject(event, CLIENT)) self.pstatsBox.Bind(wx.EVT_CHECKBOX, self.__pstats) self.addToSizer(self.buttonSizer, self.injectButton) self.addToSizer(self.checkboxSizer, self.pstatsBox) self.sizer.Add(self.checkboxPanel, 0, wx.ALIGN_CENTER) self.sizer.Add(self.injectBox, 1, wx.EXPAND) self.sizer.Add(self.buttonPanel, 0, wx.ALIGN_CENTER) self.buttonPanel.SetSizer(self.buttonSizer) self.panel.SetSizer(self.sizer) self.frame.SetMinSize((765, 325)) self.frame.Show() atexit.register(self.__pstatCleanup) threading.Thread(target=self.app.MainLoop).start()
def pollOnce(self): """ Poll for incoming data once. """ try: rlist = select.select([self.listenerSocket] + self.connections.keys(), [], [])[0] except: # It's likely that one or more of our sockets is no longer valid. # If it's our listener socket, we can't continue: try: self.listenerSocket.fileno() except: self.notify.error('The listener socket is no longer valid!') # Otherwise, discard the faulty sockets, and wait for the next poll # iteration: for socket in self.connections.keys(): try: socket.fileno() socket.getpeername() except: del self.connections[socket] if socket in self.dispatchThreads: del self.dispatchThreads[socket] return if self.listenerSocket in rlist: self.handleNewConnection() for socket in rlist: connection = self.connections.get(socket) if connection is None: continue if socket in self.dispatchThreads: continue self.dispatchThreads[socket] = threading.Thread( target=self.dispatchThread, args=[socket]) self.dispatchThreads[socket].start()
def init_ThreadGraph(self, StartingFrame, EndFrame, Xindex, Yindex, datatype): if self.chart_thread == None or not self.chart_thread.is_alive(): self.chart_thread = threading.Thread(target = self.TrackMotion, args = (StartingFrame, EndFrame, Xindex, Yindex, datatype)) self.chart_thread.start() else: self.TrackMotion( StartingFrame, EndFrame, Xindex, Yindex, datatype)
def __init__(self): ShowBase.__init__(self) self.speed = 40 # Mouse and camera movement init self.mouseX_last = 0 self.mouseY_last = 0 self.rotateCamera = False self.move_z = 50 self.env = cEnvironment(self) self.env.CreateBasement() # to not be lost if there is nothing around self.env.SetupLights() self.env.SetupCamera() width = self.win.getProperties().getXSize() height = self.win.getProperties().getYSize() self.gui = cGUI(width, height, self.loader, visApp=self) self.client = SocketClient() self.client.setGui(self.gui) self.interaction = cInteraction(self) self.interaction.SetupKeys() self.interaction.SetupOnClick() self.taskMgr.add(self.update, "main loop") self.accept(self.win.getWindowEvent(), self.interaction.onWindowEvent) self.HTMObjects = {} self.allHTMobjectsCreated = False self.oneOfObjectsCreationFinished = False self.gfxCreationThread = threading.Thread( target=self.gfxCreationWorker, args=())
def openInjector_wx(): global textbox app = wx.App(redirect=False) frame = wx.Frame(None, title="Toontown: The Edge Injector", size=(640, 450), style=wx.SYSTEM_MENU | wx.CAPTION | wx.MINIMIZE_BOX | wx.FRAME_SHAPED) frame.Centre() panel = wx.Panel(frame) button = wx.Button(parent=panel, id=-1, label="Inject", size=(510, 90), pos=(65, 312)) button.SetFont(wx.Font(19, wx.DECORATIVE, wx.NORMAL, wx.NORMAL)) clearbutton = wx.Button(parent=panel, id=-1, label="Clear\nBox", size=(40, 40), pos=(10, 312)) #my clear button clearbutton.SetFont(wx.Font(7, wx.MODERN, wx.NORMAL, wx.NORMAL)) #my clear button textbox = wx.TextCtrl(parent=panel, id=-1, pos=(20, 0), size=(600, 310), style=wx.TE_MULTILINE) frame.Bind(wx.EVT_BUTTON, __inject_wx, button) frame.Bind(wx.EVT_BUTTON, __clear_injector, clearbutton) #my clear button frame.Show() imageFile = 'flowerbg.jpg' data = open(imageFile, "rb").read() stream = cStringIO.StringIO(data) bmp = wx.BitmapFromImage(wx.ImageFromStream(stream)) wx.StaticBitmap(frame, -1, bmp, (0,0)) #app.SetTopWindow(frame) defaultText = '' textbox.AppendText(defaultText) threading.Thread(target=app.MainLoop).start()
from direct.showbase.ShowBase import ShowBase from panda3d.core import VirtualFileSystem import __builtin__, wx, os __builtin__.__dict__.update(__import__('panda3d.core', fromlist=['*']).__dict__) loadPrcFile('dependencies/config/guieditor.prc') loadPrcFile('dependencies/config/general.prc') defaultText = """from direct.gui.DirectGui import * """ def inject(_): code = textbox.GetValue() exec(code, globals()) app = wx.App(redirect=False) frame = wx.Frame(None, title="Injector", size=(640, 400), style=wx.SYSTEM_MENU | wx.CAPTION | wx.CLOSE_BOX | wx.MINIMIZE_BOX) panel = wx.Panel(frame) button = wx.Button(parent=panel, id=-1, label="Inject", size=(50, 20), pos=(295, 0)) textbox = wx.TextCtrl(parent=panel, id=-1, pos=(20, 22), size=(600, 340), style=wx.TE_MULTILINE) frame.Bind(wx.EVT_BUTTON, inject, button) frame.Show() app.SetTopWindow(frame) textbox.AppendText(defaultText) threading.Thread(target=app.MainLoop).start() __builtin__.base = ShowBase() base.run()
try: output = eval(inp) print('\033[1m' + str(output) + '\033[0m') except SyntaxError as se: print("Type 'help()' for an interactive help session") except ZeroDivisionError as zde: print(zde) def __iter__(self): return self def __next__(self): return input() if __name__ == "__main__": server = Server(9415, 1000) taskMgr.add(server.listener_polling_task, "Poll the connection listener") taskMgr.add(server.reader_polling_task, "Poll the connection reader") if args.mp: taskMgr.add(server.update_positions, "Update Every Player", extraArgs=[None]) threading.Thread(target=lambda: Interactive()).start() logging.info("started") base.run()
def start_consumer_thread(self, thread_name, new=True): # can have more than one consumer logging.debug('start thread {0}'.format(thread_name)) if new: self.consumer_thread.append(threading.Thread(name=thread_name, target=self.consumer)) self.consumer_thread[-1].start()