Fix game crashing when weapons were not customized.

This commit is contained in:
csd4ni3l
2025-07-16 09:31:06 +02:00
parent 5d3f5c157b
commit 027990f4fe
2 changed files with 4 additions and 5 deletions

View File

@@ -2,7 +2,7 @@ from game.inventory import Inventory
from game.player import Player
from game.enemy import Enemy
from utils.constants import min_enemy_y, max_enemy_y, enemies
from utils.constants import min_enemy_y, max_enemy_y, enemies, weapons
from ursina import *
from ursina.shaders import lit_with_shadows_shader
@@ -33,10 +33,10 @@ class Game():
self.ground = Entity(model='plane', collider='box', scale=64, texture='grass', texture_scale=(4,4), shader=lit_with_shadows_shader)
self.info_label = Text("Score: 0 Hits: 0/0 Accuracy: 0%", parent=camera.ui, position=(-0.1 if self.game_mode == "training" else -0.4, 0.475))
self.inventory = Inventory(slots=len(self.settings_dict.get("weapons")))
self.inventory = Inventory(slots=len(self.settings_dict.get("weapons", weapons)))
for n, weapon in enumerate(self.settings_dict.get("weapons")):
self.inventory.append(self.settings_dict.get("weapons")[weapon]["image"], weapon, n)
for n, weapon in enumerate(self.settings_dict.get("weapons", weapons)):
self.inventory.append(self.settings_dict.get("weapons", weapons)[weapon]["image"], weapon, n)
self.player = Player(self.game_mode, self.settings_dict, self.high_score, self.info_label, self.inventory, pypresence_client)
self.player.summon_enemy = self.summon_enemy

View File

@@ -70,7 +70,6 @@ class Player(FixedFirstPersonController):
self.gun.texture = Texture(Path(self.settings_dict.get("weapons", weapons)[weapon_name]["image"]))
self.weapon_attack_speed = self.settings_dict.get("weapons", weapons)[weapon_name]["atk_speed"]
self.weapon_dmg = self.settings_dict.get("weapons", weapons)[weapon_name]["dmg"]
if self.score > self.high_score:
self.high_score = self.score