This commit is contained in:
30
.github/workflows/build.yml
vendored
Normal file
30
.github/workflows/build.yml
vendored
Normal file
@@ -0,0 +1,30 @@
|
||||
name: Build Windows EXE
|
||||
|
||||
on: [push]
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: windows-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- name: Set up Python
|
||||
uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: '3.14' # Match your local python version
|
||||
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
python -m pip install --upgrade pip
|
||||
pip install arcade pygame pyinstaller
|
||||
|
||||
- name: Build with PyInstaller
|
||||
run: |
|
||||
pyinstaller --onefile --noconsole --add-data "res;res" src/main.py
|
||||
|
||||
- name: Upload Artifact
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: Windows-Game-EXE
|
||||
path: dist/main.exe
|
||||
@@ -5,6 +5,9 @@ Teljesen AI-generált szakaszokat egy `# !!! CHATGPT !!!` komment jelzi
|
||||
|
||||
## AI generálta komponensek:
|
||||
|
||||
### assets.py
|
||||
* minden
|
||||
|
||||
### main.py
|
||||
* Game
|
||||
|
||||
|
||||
@@ -1,44 +1,54 @@
|
||||
import os
|
||||
import sys
|
||||
import arcade
|
||||
import pygame
|
||||
|
||||
pygame.mixer.init()
|
||||
|
||||
def resource_path(relative_path):
|
||||
"""Get absolute path to resource, works for dev and for PyInstaller builds."""
|
||||
try:
|
||||
base_path = sys._MEIPASS
|
||||
except Exception:
|
||||
base_path = os.path.abspath(".")
|
||||
return os.path.join(base_path, relative_path)
|
||||
|
||||
sprites = {
|
||||
"cursor" : arcade.load_texture("res/sprite/handcursor.png"),
|
||||
"title" : arcade.load_texture("res/sprite/title.png"),
|
||||
"test_bbg" : arcade.load_texture("res/sprite/test_bbg.png"),
|
||||
"kefka" : arcade.load_texture("res/sprite/kefka.png"),
|
||||
"dwagon" : arcade.load_texture("res/sprite/dwagon.png"),
|
||||
"dwagon_low" : arcade.load_texture("res/sprite/dwagon_low.png"),
|
||||
"dwagon_dead" : arcade.load_texture("res/sprite/dwagon_dead.png"),
|
||||
"zombie" : arcade.load_texture("res/sprite/zombie.png"),
|
||||
"zombie_low" : arcade.load_texture("res/sprite/zombie_low.png"),
|
||||
"zombie_dead" : arcade.load_texture("res/sprite/zombie_dead.png"),
|
||||
"skeleton" : arcade.load_texture("res/sprite/skeleton.png"),
|
||||
"skeleton_low" : arcade.load_texture("res/sprite/skeleton_low.png"),
|
||||
"skeleton_dead" : arcade.load_texture("res/sprite/skeleton_dead.png"),
|
||||
"witch" : arcade.load_texture("res/sprite/witch.png"),
|
||||
"witch_low" : arcade.load_texture("res/sprite/witch_low.png"),
|
||||
"witch_dead" : arcade.load_texture("res/sprite/witch_dead.png"),
|
||||
"herojoe" : arcade.load_texture("res/sprite/herojoe.png"),
|
||||
"herojoe_low" : arcade.load_texture("res/sprite/herojoe_low.png"),
|
||||
"herojoe_dead" : arcade.load_texture("res/sprite/herojoe_dead.png"),
|
||||
"heroinejane" : arcade.load_texture("res/sprite/heroinejane.png"),
|
||||
"heroinejane_low" : arcade.load_texture("res/sprite/heroinejane_low.png"),
|
||||
"heroinejane_dead" : arcade.load_texture("res/sprite/heroinejane_dead.png"),
|
||||
"font" : arcade.load_spritesheet("res/sprite/font.png"),
|
||||
"panel" : arcade.load_spritesheet("res/sprite/panel.png"),
|
||||
"podium" : arcade.load_spritesheet("res/sprite/podium.png"),
|
||||
"balthasar" : arcade.load_spritesheet("res/sprite/balthasar.png"),
|
||||
"overworld" : arcade.load_spritesheet("res/sprite/overworld_sheet.png"),
|
||||
"cursor" : arcade.load_texture(resource_path("res/sprite/handcursor.png")),
|
||||
"title" : arcade.load_texture(resource_path("res/sprite/title.png")),
|
||||
"test_bbg" : arcade.load_texture(resource_path("res/sprite/test_bbg.png")),
|
||||
"kefka" : arcade.load_texture(resource_path("res/sprite/kefka.png")),
|
||||
"dwagon" : arcade.load_texture(resource_path("res/sprite/dwagon.png")),
|
||||
"dwagon_low" : arcade.load_texture(resource_path("res/sprite/dwagon_low.png")),
|
||||
"dwagon_dead" : arcade.load_texture(resource_path("res/sprite/dwagon_dead.png")),
|
||||
"zombie" : arcade.load_texture(resource_path("res/sprite/zombie.png")),
|
||||
"zombie_low" : arcade.load_texture(resource_path("res/sprite/zombie_low.png")),
|
||||
"zombie_dead" : arcade.load_texture(resource_path("res/sprite/zombie_dead.png")),
|
||||
"skeleton" : arcade.load_texture(resource_path("res/sprite/skeleton.png")),
|
||||
"skeleton_low" : arcade.load_texture(resource_path("res/sprite/skeleton_low.png")),
|
||||
"skeleton_dead" : arcade.load_texture(resource_path("res/sprite/skeleton_dead.png")),
|
||||
"witch" : arcade.load_texture(resource_path("res/sprite/witch.png")),
|
||||
"witch_low" : arcade.load_texture(resource_path("res/sprite/witch_low.png")),
|
||||
"witch_dead" : arcade.load_texture(resource_path("res/sprite/witch_dead.png")),
|
||||
"herojoe" : arcade.load_texture(resource_path("res/sprite/herojoe.png")),
|
||||
"herojoe_low" : arcade.load_texture(resource_path("res/sprite/herojoe_low.png")),
|
||||
"herojoe_dead" : arcade.load_texture(resource_path("res/sprite/herojoe_dead.png")),
|
||||
"heroinejane" : arcade.load_texture(resource_path("res/sprite/heroinejane.png")),
|
||||
"heroinejane_low" : arcade.load_texture(resource_path("res/sprite/heroinejane_low.png")),
|
||||
"heroinejane_dead" : arcade.load_texture(resource_path("res/sprite/heroinejane_dead.png")),
|
||||
"font" : arcade.load_spritesheet(resource_path("res/sprite/font.png")),
|
||||
"panel" : arcade.load_spritesheet(resource_path("res/sprite/panel.png")),
|
||||
"podium" : arcade.load_spritesheet(resource_path("res/sprite/podium.png")),
|
||||
"balthasar" : arcade.load_spritesheet(resource_path("res/sprite/balthasar.png")),
|
||||
"overworld" : arcade.load_spritesheet(resource_path("res/sprite/overworld_sheet.png")),
|
||||
}
|
||||
|
||||
sounds = {
|
||||
"mus_hatred" : pygame.mixer.Sound("res/mus/hatred.wav"),
|
||||
"mus_getrickrolled" : pygame.mixer.Sound("res/mus/getrickrolled.wav"),
|
||||
"mus_decisive" : pygame.mixer.Sound("res/mus/decisive.wav"),
|
||||
"mus_fnafsux" : pygame.mixer.Sound("res/mus/fnafsux.wav"),
|
||||
"mus_finale" : pygame.mixer.Sound("res/mus/finale.wav"),
|
||||
"mus_credits" : pygame.mixer.Sound("res/mus/credits.wav"),
|
||||
"sfx_encounter" : pygame.mixer.Sound("res/sfx/encounter.wav"),
|
||||
"mus_hatred" : pygame.mixer.Sound(resource_path("res/mus/hatred.wav")),
|
||||
"mus_getrickrolled" : pygame.mixer.Sound(resource_path("res/mus/getrickrolled.wav")),
|
||||
"mus_decisive" : pygame.mixer.Sound(resource_path("res/mus/decisive.wav")),
|
||||
"mus_fnafsux" : pygame.mixer.Sound(resource_path("res/mus/fnafsux.wav")),
|
||||
"mus_finale" : pygame.mixer.Sound(resource_path("res/mus/finale.wav")),
|
||||
"mus_credits" : pygame.mixer.Sound(resource_path("res/mus/credits.wav")),
|
||||
"sfx_encounter" : pygame.mixer.Sound(resource_path("res/sfx/encounter.wav")),
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user