omz:forum

    • Register
    • Login
    • Search
    • Recent
    • Popular
    1. Home
    2. Luxi

    Welcome!

    This is the community forum for my apps Pythonista and Editorial.

    For individual support questions, you can also send an email. If you have a very short question or just want to say hello — I'm @olemoritz on Twitter.


    • Profile
    • Following 0
    • Followers 0
    • Topics 1
    • Posts 1
    • Best 0
    • Controversial 0
    • Groups 0

    Luxi

    @Luxi

    0
    Reputation
    171
    Profile views
    1
    Posts
    0
    Followers
    0
    Following
    Joined Last Online

    Luxi Unfollow Follow

    Latest posts made by Luxi

    • Script crashes after 20 seconds

      When I try to run this script and I have a print action in the update function it crashes after ~20 seconds of normal functioning.
      When I remove the print action it doesn’t crash but without a print it is really hard to do debugging.

      Sorry for very messy code

      from scene import *
      #import sound
      import random
      import math
      import Funcs
      import logging
      #import sleep
      A = Action
      
      class MyScene (Scene):
      	
      	def draw(self):
      		pass
      	def setup(self):
      		
      		
      		self.view.update_interval = 1
      		
      		
      
      		
      		#print(get_screen_size())
      		self.squares = {}
      		self.states_all = {}
      		self.square_number = 0		
      		self.x,self.y = 0,0
      		self.x_max_numbers = []
      		self.all_numbers = []
      		
      		while self.y < (get_screen_size()[1] - 400):
      			self.square = SpriteNode('shp:Circle')
      			self.square.color = '#000000'
      			self.square.size = 100,100	
      			
      			self.square.position = self.x,self.y
      			self.add_child(self.square)
      			
      			self.x += 100
      			if self.x > get_screen_size()[0] - 400:
      				self.x_max_numbers.append(self.x)
      				self.x = 0
      				self.y += 100
      			
      			self.squares.update({self.square_number:self.square})
      			
      			self.states_all.update({str(self.square):0})
      			#lol#
      			self.all_numbers.append(self.square_number)
      			self.square_number += 1
      			
      			
      			
      		self.x_max = max(self.x_max_numbers)
      		
      		self.mesh = {}
      		for num in range(self.square_number):
      			
      			meshes = Funcs.finding(num,int(self.x_max / 100),self.square_number - 1,self.y)
      			self.mesh.update({num:meshes})
      		#exit(self.mesh)
      		
      		
      		
      		#print(self.square.children)
      		
      	
      		
      		self.fram = 0	
      		
      		self.pause_mode = False
      		self.pause = SpriteNode('iow:ios7_star_256')
      		self.pause.scale = 0.5
      		self.pause.position = (get_screen_size()[0] / 2), 800 #(get_screen_size()[1] - self.pause.size[1])
      		self.add_child(self.pause)
      		print(self.all_numbers)
      		print('serup fertig')
      		
      		
      		
      		
      		
      		
      		
      #--------------------------------------------------------------------------------------------------------------------
      	def update(self):
      		#for touch in self.touches.values():
      			
      		
      		
      		
      		
      		
      		
      		
      		
      		
      		
      		
      		
      		
      		
      		#self.fram += 1
      		#print(self.fram)
      		#print('update')
      		squares = self.squares
      		mesh = self.mesh
      		square_number = self.square_number
      		states_all = self.states_all
      		#print(6)
      		all_numbers = self.all_numbers
      		
      		for curent_cell in self.all_numbers:
      			#print(curent_cell)
      			#print(states_all)
      			if self.pause_mode == False:
      				#print(6)
      				curent_cell_obj = self.squares[curent_cell]
      				nachbarn = self.mesh[curent_cell]
      				Anzahl_lebend = 0
      				Anzahl_Tot = 0
      				
      				for nachbar in nachbarn:
      					logging.log(10,'hi')
      					state_square = self.squares[nachbar]
      					#print(state_square)
      					state_now = self.states_all[str(state_square)]
      					
      					if state_now == 1:
      						Anzahl_lebend += 1
      					if state_now == 0:
      						Anzahl_Tot += 1
      				alive = True
      				
      				if Anzahl_lebend < 2 or Anzahl_lebend > 3:
      					alive = False
      				if Anzahl_lebend == 2 or Anzahl_lebend == 3:
      					alive = True
      				
      			#	if alive == True:
      				#	self.states_all[str(curent_cell_obj)]	= 1
      					#curent_cell_obj.color = '#ffffff'
      				#else:
      					#self.states_all[str(curent_cell_obj)]	= 0
      					#curent_cell_obj.color = '#000000'
      				#print(Anzahl_lebend)
      				#print(Anzahl_Tot)
      				print(Anzahl_lebend)
      		#Scene.setup(self)
      	
      	
      		
      	def touch_began(self, touch):
      		for obj in self.squares.values():
      				print('touched')
      				if touch.location in obj.bbox:
      					#print(obj.color)
      					if obj.color != (0.0, 0.0, 0.0, 1.0):
      						obj.color = '#000000'
      						self.states_all[obj] = 0
      					else:
      						#print('war nicht ')
      						obj.color = '#ffffff'
      						self.states_all[obj] = 1
      		if touch.location in self.pause.bbox:
      			if self.pause_mode == False:
      				self.pause_mode = True
      			else:
      				self.pause_mode = False
      					
      	def touch_moved(self, touch):
      		pass
      	
      	def touch_ended(self, touch):
      		pass
      
      
      run(MyScene(), show_fps=True) ```
      posted in Pythonista
      Luxi
      Luxi