Update settings.py
parent
ed1bad98d8
commit
f8b22aa8e9
79
settings.py
79
settings.py
|
|
@ -12,7 +12,6 @@ GAME_TITLE = "Terraria Clone"
|
||||||
|
|
||||||
BACKGROUND_COLOR = (135, 206, 235) # Sky blue
|
BACKGROUND_COLOR = (135, 206, 235) # Sky blue
|
||||||
|
|
||||||
|
|
||||||
# ==========================================
|
# ==========================================
|
||||||
# TILE SETTINGS
|
# TILE SETTINGS
|
||||||
# ==========================================
|
# ==========================================
|
||||||
|
|
@ -22,7 +21,6 @@ CHUNK_SIZE = 16 # 16x16 tiles per chunk
|
||||||
RENDER_DISTANCE = 3 # how many chunks visible around player
|
RENDER_DISTANCE = 3 # how many chunks visible around player
|
||||||
|
|
||||||
# Tile IDs
|
# Tile IDs
|
||||||
# Tiles
|
|
||||||
AIR = 0
|
AIR = 0
|
||||||
DIRT = 1
|
DIRT = 1
|
||||||
GRASS = 2
|
GRASS = 2
|
||||||
|
|
@ -50,22 +48,17 @@ ITEM_GOLD_SWORD = 202
|
||||||
# Tile properties
|
# Tile properties
|
||||||
TILE_PROPERTIES = {
|
TILE_PROPERTIES = {
|
||||||
AIR: {"solid": False, "color": (0, 0, 0), "drop": None},
|
AIR: {"solid": False, "color": (0, 0, 0), "drop": None},
|
||||||
|
|
||||||
DIRT: {"solid": True, "color": (139, 69, 19), "drop": ITEM_STONE},
|
DIRT: {"solid": True, "color": (139, 69, 19), "drop": ITEM_STONE},
|
||||||
GRASS: {"solid": True, "color": (34, 177, 76), "drop": ITEM_STONE},
|
GRASS: {"solid": True, "color": (34, 177, 76), "drop": ITEM_STONE},
|
||||||
STONE: {"solid": True, "color": (100, 100, 100), "drop": ITEM_STONE},
|
STONE: {"solid": True, "color": (100, 100, 100), "drop": ITEM_STONE},
|
||||||
|
|
||||||
WOOD: {"solid": True, "color": (160, 82, 45), "drop": ITEM_WOOD},
|
WOOD: {"solid": True, "color": (160, 82, 45), "drop": ITEM_WOOD},
|
||||||
LEAVES: {"solid": False, "color": (34, 139, 34), "drop": None},
|
LEAVES: {"solid": False, "color": (34, 139, 34), "drop": None},
|
||||||
|
|
||||||
# ORES
|
|
||||||
IRON_ORE: {"solid": True, "color": (180, 180, 180), "drop": ITEM_IRON},
|
IRON_ORE: {"solid": True, "color": (180, 180, 180), "drop": ITEM_IRON},
|
||||||
GOLD_ORE: {"solid": True, "color": (255, 215, 0), "drop": ITEM_GOLD},
|
GOLD_ORE: {"solid": True, "color": (255, 215, 0), "drop": ITEM_GOLD},
|
||||||
COPPER_ORE: {"solid": True, "color": (210, 120, 60), "drop": ITEM_COPPER},
|
COPPER_ORE: {"solid": True, "color": (210, 120, 60), "drop": ITEM_COPPER},
|
||||||
COAL_ORE: {"solid": True, "color": (40, 40, 40), "drop": ITEM_COAL},
|
COAL_ORE: {"solid": True, "color": (40, 40, 40), "drop": ITEM_COAL},
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
# ==========================================
|
# ==========================================
|
||||||
# WORLD GENERATION
|
# WORLD GENERATION
|
||||||
# ==========================================
|
# ==========================================
|
||||||
|
|
@ -82,13 +75,11 @@ ORE_THRESHOLD = 0.75
|
||||||
NOISE_SCALE = 0.05
|
NOISE_SCALE = 0.05
|
||||||
OCTAVES = 4
|
OCTAVES = 4
|
||||||
|
|
||||||
# Perlin noise settings for smoother terrain
|
|
||||||
PERLIN_SCALE = 80.0
|
PERLIN_SCALE = 80.0
|
||||||
PERLIN_OCTAVES = 6
|
PERLIN_OCTAVES = 6
|
||||||
PERLIN_PERSISTENCE = 0.5
|
PERLIN_PERSISTENCE = 0.5
|
||||||
PERLIN_LACUNARITY = 2.0
|
PERLIN_LACUNARITY = 2.0
|
||||||
|
|
||||||
|
|
||||||
# ==========================================
|
# ==========================================
|
||||||
# PLAYER SETTINGS
|
# PLAYER SETTINGS
|
||||||
# ==========================================
|
# ==========================================
|
||||||
|
|
@ -108,7 +99,6 @@ DOUBLE_JUMP = False
|
||||||
|
|
||||||
MAX_HEALTH = 100
|
MAX_HEALTH = 100
|
||||||
|
|
||||||
|
|
||||||
# ==========================================
|
# ==========================================
|
||||||
# CAMERA SETTINGS
|
# CAMERA SETTINGS
|
||||||
# ==========================================
|
# ==========================================
|
||||||
|
|
@ -116,7 +106,6 @@ MAX_HEALTH = 100
|
||||||
CAMERA_SMOOTHING = 0.1
|
CAMERA_SMOOTHING = 0.1
|
||||||
CAMERA_OFFSET_Y = -100
|
CAMERA_OFFSET_Y = -100
|
||||||
|
|
||||||
|
|
||||||
# ==========================================
|
# ==========================================
|
||||||
# INVENTORY SETTINGS
|
# INVENTORY SETTINGS
|
||||||
# ==========================================
|
# ==========================================
|
||||||
|
|
@ -128,63 +117,35 @@ STACK_LIMIT = 999
|
||||||
INVENTORY_SLOT_SIZE = 40
|
INVENTORY_SLOT_SIZE = 40
|
||||||
INVENTORY_PADDING = 4
|
INVENTORY_PADDING = 4
|
||||||
|
|
||||||
# Hotbar settings
|
|
||||||
HOTBAR_VISIBLE = True
|
HOTBAR_VISIBLE = True
|
||||||
HOTBAR_SLOT_COUNT = 8
|
HOTBAR_SLOT_COUNT = 8
|
||||||
|
|
||||||
|
|
||||||
# ==========================================
|
# ==========================================
|
||||||
# COMBAT SETTINGS
|
# COMBAT SETTINGS
|
||||||
# ==========================================
|
# ==========================================
|
||||||
|
|
||||||
# Weapon stats
|
|
||||||
WEAPON_STATS = {
|
WEAPON_STATS = {
|
||||||
ITEM_WOODEN_SWORD: {
|
ITEM_WOODEN_SWORD: {"name": "Wooden Sword", "damage": 8, "cooldown": 0.6, "knockback": 300, "color": (160, 82, 45)},
|
||||||
"name": "Wooden Sword",
|
ITEM_IRON_SWORD: {"name": "Iron Sword", "damage": 15, "cooldown": 0.8, "knockback": 400, "color": (180, 180, 180)},
|
||||||
"damage": 8,
|
ITEM_GOLD_SWORD: {"name": "Gold Sword", "damage": 20, "cooldown": 1.0, "knockback": 500, "color": (255, 215, 0)},
|
||||||
"cooldown": 0.6,
|
|
||||||
"knockback": 300,
|
|
||||||
"color": (160, 82, 45),
|
|
||||||
},
|
|
||||||
ITEM_IRON_SWORD: {
|
|
||||||
"name": "Iron Sword",
|
|
||||||
"damage": 15,
|
|
||||||
"cooldown": 0.8,
|
|
||||||
"knockback": 400,
|
|
||||||
"color": (180, 180, 180),
|
|
||||||
},
|
|
||||||
ITEM_GOLD_SWORD: {
|
|
||||||
"name": "Gold Sword",
|
|
||||||
"damage": 20,
|
|
||||||
"cooldown": 1.0,
|
|
||||||
"knockback": 500,
|
|
||||||
"color": (255, 215, 0),
|
|
||||||
},
|
|
||||||
}
|
}
|
||||||
|
|
||||||
ATTACK_RANGE = 60 # pixels
|
ATTACK_RANGE = 60
|
||||||
ATTACK_COOLDOWN = 0.5 # seconds
|
ATTACK_COOLDOWN = 0.5
|
||||||
|
|
||||||
|
|
||||||
# ==========================================
|
# ==========================================
|
||||||
# BLOCK BREAKING / PLACING
|
# BLOCK BREAKING / PLACING
|
||||||
# ==========================================
|
# ==========================================
|
||||||
|
|
||||||
BREAK_RANGE = 5 # tiles
|
BREAK_RANGE = 5
|
||||||
BREAK_TIME = {
|
BREAK_TIME = {
|
||||||
DIRT: 0.3,
|
DIRT: 0.3, GRASS: 0.3, STONE: 0.8,
|
||||||
GRASS: 0.3,
|
WOOD: 0.5, IRON_ORE: 1.2, GOLD_ORE: 1.5,
|
||||||
STONE: 0.8,
|
COPPER_ORE: 1.0, COAL_ORE: 0.9,
|
||||||
WOOD: 0.5,
|
|
||||||
IRON_ORE: 1.2,
|
|
||||||
GOLD_ORE: 1.5,
|
|
||||||
COPPER_ORE: 1.0,
|
|
||||||
COAL_ORE: 0.9,
|
|
||||||
}
|
}
|
||||||
|
|
||||||
PLACE_RANGE = 5
|
PLACE_RANGE = 5
|
||||||
|
|
||||||
|
|
||||||
# ==========================================
|
# ==========================================
|
||||||
# ENEMY SETTINGS
|
# ENEMY SETTINGS
|
||||||
# ==========================================
|
# ==========================================
|
||||||
|
|
@ -192,11 +153,13 @@ PLACE_RANGE = 5
|
||||||
MAX_ENEMIES = 10
|
MAX_ENEMIES = 10
|
||||||
ENEMY_SPAWN_RATE = 5 # seconds
|
ENEMY_SPAWN_RATE = 5 # seconds
|
||||||
ENEMY_SPEED = 100
|
ENEMY_SPEED = 100
|
||||||
ENEMY_DAMAGE = 10
|
|
||||||
ENEMY_HEALTH = 50
|
ENEMY_HEALTH = 50
|
||||||
ENEMY_GRAVITY = 2200 # Enemies affected by gravity
|
ENEMY_GRAVITY = 2200
|
||||||
ENEMY_KNOCKBACK_RESISTANCE = 0.8 # How much knockback affects enemies
|
ENEMY_KNOCKBACK_RESISTANCE = 0.8
|
||||||
|
|
||||||
|
# Added missing constants for combat
|
||||||
|
ENEMY_ATTACK_DAMAGE = 10
|
||||||
|
ENEMY_ATTACK_RANGE = 50
|
||||||
|
|
||||||
# ==========================================
|
# ==========================================
|
||||||
# PHYSICS SETTINGS
|
# PHYSICS SETTINGS
|
||||||
|
|
@ -205,25 +168,13 @@ ENEMY_KNOCKBACK_RESISTANCE = 0.8 # How much knockback affects enemies
|
||||||
TERMINAL_VELOCITY = 1200
|
TERMINAL_VELOCITY = 1200
|
||||||
COLLISION_STEPS = 4
|
COLLISION_STEPS = 4
|
||||||
|
|
||||||
|
|
||||||
# ==========================================
|
# ==========================================
|
||||||
# LIGHTING (for future use)
|
# LIGHTING
|
||||||
# ==========================================
|
# ==========================================
|
||||||
|
|
||||||
ENABLE_LIGHTING = False
|
ENABLE_LIGHTING = False
|
||||||
LIGHT_RADIUS = 5
|
LIGHT_RADIUS = 5
|
||||||
|
|
||||||
|
|
||||||
# ==========================================
|
|
||||||
# DEBUG SETTINGS
|
|
||||||
# ==========================================
|
|
||||||
|
|
||||||
DEBUG_MODE = True
|
|
||||||
SHOW_FPS = True
|
|
||||||
SHOW_COLLIDERS = False
|
|
||||||
SHOW_CHUNK_BORDERS = False
|
|
||||||
|
|
||||||
|
|
||||||
# ==========================================
|
# ==========================================
|
||||||
# DEBUG SETTINGS
|
# DEBUG SETTINGS
|
||||||
# ==========================================
|
# ==========================================
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue