59 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Python
		
	
	
	
			
		
		
	
	
			59 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Python
		
	
	
	
#!/usr/bin/env python3
 | 
						|
"""Debug visibility crash"""
 | 
						|
 | 
						|
import mcrfpy
 | 
						|
import sys
 | 
						|
 | 
						|
print("Debug visibility...")
 | 
						|
 | 
						|
# Create scene and grid
 | 
						|
mcrfpy.createScene("debug")
 | 
						|
grid = mcrfpy.Grid(grid_x=5, grid_y=5)
 | 
						|
 | 
						|
# Initialize grid
 | 
						|
print("Initializing grid...")
 | 
						|
for y in range(5):
 | 
						|
    for x in range(5):
 | 
						|
        cell = grid.at(x, y)
 | 
						|
        cell.walkable = True
 | 
						|
        cell.transparent = True
 | 
						|
 | 
						|
# Create entity
 | 
						|
print("Creating entity...")
 | 
						|
entity = mcrfpy.Entity(2, 2)
 | 
						|
entity.sprite_index = 64
 | 
						|
grid.entities.append(entity)
 | 
						|
print(f"Entity at ({entity.x}, {entity.y})")
 | 
						|
 | 
						|
# Check gridstate
 | 
						|
print(f"\nGridstate length: {len(entity.gridstate)}")
 | 
						|
print(f"Expected: {5 * 5}")
 | 
						|
 | 
						|
# Try to access gridstate
 | 
						|
print("\nChecking gridstate access...")
 | 
						|
try:
 | 
						|
    if len(entity.gridstate) > 0:
 | 
						|
        state = entity.gridstate[0]
 | 
						|
        print(f"First state: visible={state.visible}, discovered={state.discovered}")
 | 
						|
except Exception as e:
 | 
						|
    print(f"Error accessing gridstate: {e}")
 | 
						|
 | 
						|
# Try update_visibility
 | 
						|
print("\nTrying update_visibility...")
 | 
						|
try:
 | 
						|
    entity.update_visibility()
 | 
						|
    print("update_visibility succeeded")
 | 
						|
except Exception as e:
 | 
						|
    print(f"Error in update_visibility: {e}")
 | 
						|
 | 
						|
# Try perspective
 | 
						|
print("\nTesting perspective...")
 | 
						|
print(f"Initial perspective: {grid.perspective}")
 | 
						|
try:
 | 
						|
    grid.perspective = 0
 | 
						|
    print(f"Set perspective to 0: {grid.perspective}")
 | 
						|
except Exception as e:
 | 
						|
    print(f"Error setting perspective: {e}")
 | 
						|
 | 
						|
print("\nTest complete")
 | 
						|
sys.exit(0) |