diff options
19 files changed, 55 insertions, 17 deletions
diff --git a/.DS_Store b/.DS_Store Binary files differnew file mode 100644 index 0000000..2b14587 --- /dev/null +++ b/.DS_Store @@ -1,3 +1,3 @@ build/ -.DS_Store +*/.DS_Store .vscode/
\ No newline at end of file diff --git a/WindowsShit/SDL2-2.24.0/.DS_Store b/WindowsShit/SDL2-2.24.0/.DS_Store Binary files differnew file mode 100644 index 0000000..fe97c43 --- /dev/null +++ b/WindowsShit/SDL2-2.24.0/.DS_Store diff --git a/WindowsShit/SDL2-2.24.0/x86_64-w64-mingw32/.DS_Store b/WindowsShit/SDL2-2.24.0/x86_64-w64-mingw32/.DS_Store Binary files differnew file mode 100644 index 0000000..5c82eca --- /dev/null +++ b/WindowsShit/SDL2-2.24.0/x86_64-w64-mingw32/.DS_Store diff --git a/WindowsShit/SDL2_image-2.6.0/.DS_Store b/WindowsShit/SDL2_image-2.6.0/.DS_Store Binary files differnew file mode 100644 index 0000000..7659e35 --- /dev/null +++ b/WindowsShit/SDL2_image-2.6.0/.DS_Store diff --git a/WindowsShit/SDL2_mixer-2.6.1/.DS_Store b/WindowsShit/SDL2_mixer-2.6.1/.DS_Store Binary files differnew file mode 100644 index 0000000..7659e35 --- /dev/null +++ b/WindowsShit/SDL2_mixer-2.6.1/.DS_Store diff --git a/WindowsShit/SDL2_ttf-2.24.0/.DS_Store b/WindowsShit/SDL2_ttf-2.24.0/.DS_Store Binary files differnew file mode 100644 index 0000000..0b6beb8 --- /dev/null +++ b/WindowsShit/SDL2_ttf-2.24.0/.DS_Store diff --git a/WindowsShit/SDL2_ttf-2.24.0/x86_64-w64-mingw32/.DS_Store b/WindowsShit/SDL2_ttf-2.24.0/x86_64-w64-mingw32/.DS_Store Binary files differnew file mode 100644 index 0000000..1c9d5a4 --- /dev/null +++ b/WindowsShit/SDL2_ttf-2.24.0/x86_64-w64-mingw32/.DS_Store diff --git a/assets/characters/.DS_Store b/assets/characters/.DS_Store Binary files differnew file mode 100644 index 0000000..358c1b2 --- /dev/null +++ b/assets/characters/.DS_Store diff --git a/assets/characters/Cobalt Phantom/.DS_Store b/assets/characters/Cobalt Phantom/.DS_Store Binary files differnew file mode 100644 index 0000000..9ec0b2a --- /dev/null +++ b/assets/characters/Cobalt Phantom/.DS_Store diff --git a/assets/characters/Crimson Reaper/.DS_Store b/assets/characters/Crimson Reaper/.DS_Store Binary files differnew file mode 100644 index 0000000..28dde00 --- /dev/null +++ b/assets/characters/Crimson Reaper/.DS_Store diff --git a/assets/characters/Crimson Reaper/sprites/.DS_Store b/assets/characters/Crimson Reaper/sprites/.DS_Store Binary files differnew file mode 100644 index 0000000..0b5b5e9 --- /dev/null +++ b/assets/characters/Crimson Reaper/sprites/.DS_Store diff --git a/assets/characters/Emerald Venom/.DS_Store b/assets/characters/Emerald Venom/.DS_Store Binary files differnew file mode 100644 index 0000000..5f50018 --- /dev/null +++ b/assets/characters/Emerald Venom/.DS_Store diff --git a/assets/characters/Emerald Venom/sprites/.DS_Store b/assets/characters/Emerald Venom/sprites/.DS_Store Binary files differnew file mode 100644 index 0000000..0b5b5e9 --- /dev/null +++ b/assets/characters/Emerald Venom/sprites/.DS_Store diff --git a/assets/characters/Golden Radiance/.DS_Store b/assets/characters/Golden Radiance/.DS_Store Binary files differnew file mode 100644 index 0000000..e1664d3 --- /dev/null +++ b/assets/characters/Golden Radiance/.DS_Store diff --git a/assets/characters/Golden Radiance/sprites/.DS_Store b/assets/characters/Golden Radiance/sprites/.DS_Store Binary files differnew file mode 100644 index 0000000..0b5b5e9 --- /dev/null +++ b/assets/characters/Golden Radiance/sprites/.DS_Store diff --git a/assets/characters/characters-data.lua b/assets/characters/characters-data.lua index 74f6233..d3cef43 100644 --- a/assets/characters/characters-data.lua +++ b/assets/characters/characters-data.lua @@ -5,6 +5,7 @@ return { speed = 5, moves = {"teleportation", "quick_dashes", "smoke_screens", "strikes_from_the_shadows"}, asset_dir = "assets/characters/Cobalt Phantom", + jump_strength = 19.4, }, { name = "Emerald Venom", @@ -12,6 +13,7 @@ return { speed = 4, moves = {"snake_whip", "venom_bite", "poison_of_the_past"}, asset_dir = "assets/characters/Emerald Venom", + jump_strength = 23.4, }, { name = "Golden Radiance", @@ -19,6 +21,7 @@ return { speed = 8, moves = {"solar_boom", "flashbang", "flare_frenzy"}, asset_dir = "assets/characters/Golden Radiance", + jump_strength = 20.2, }, { name = "Crimson Reaper", @@ -26,5 +29,6 @@ return { speed = 2, moves = {"soul_slash", "deaths_reach", "phantom_step", "grim_harvest"}, asset_dir = "assets/characters/Crimson Reaper", + jump_strength = 28.4, } } diff --git a/assets/gui/.DS_Store b/assets/gui/.DS_Store Binary files differnew file mode 100644 index 0000000..df5b5e4 --- /dev/null +++ b/assets/gui/.DS_Store diff --git a/assets/scripts/local2P.lua b/assets/scripts/local2P.lua index df20f61..c8e0aa5 100644 --- a/assets/scripts/local2P.lua +++ b/assets/scripts/local2P.lua @@ -1,10 +1,24 @@ ---@diagnostic disable: undefined-global -jumpMultiplier = 7 + +function SafeInitCharacter(character, default_x, default_y) + character.x = character.x or default_x + character.y = character.y or default_y + character.y_velocity = character.y_velocity or 1 + character.current_sprite = character.asset_dir .. "/sprites/idle.png" +end + +function Setup() + SafeInitCharacter(player1Character, 250, 250) + SafeInitCharacter(player2Character, WIDTH - 250 - (250 / 2), 250) +end + +gravity = 1.2 -- POSITIVE gravity +floor_y = HEIGHT - 250 function HandleP1Input() - if Input.isKeyPressedOnce("W") then - player1Character.y = player1Character.y - player1Character.speed * jumpMultiplier; + if Input.isKeyPressedOnce("W") and player1Character.y == floor_y then + player1Character.y_velocity = player1Character.jump_strength * -1.0; end if Input.isKeyDown("D") then player1Character.x = player1Character.x + player1Character.speed; @@ -15,8 +29,8 @@ function HandleP1Input() end function HandleP2Input() - if Input.isKeyPressedOnce("UP") then - player2Character.y = player2Character.y - player2Character.speed * jumpMultiplier; + if Input.isKeyPressedOnce("UP") and player2Character.y == floor_y then + player2Character.y_velocity = player2Character.jump_strength * -1.0; end if Input.isKeyDown("RIGHT") then player2Character.x = player2Character.x + player2Character.speed; @@ -26,20 +40,40 @@ function HandleP2Input() end end -function Setup() - player1Character.x = 250; - player2Character.x = WIDTH - 250 - (250 / 2) - player1Character.y = 250; - player2Character.y = 250; +function Update() + -- P1 physics + player1Character.y_velocity = player1Character.y_velocity + gravity + player1Character.y = player1Character.y + player1Character.y_velocity - player1Character.current_sprite = player1Character.asset_dir .. "/sprites/idle.png" - player2Character.current_sprite = player2Character.asset_dir .. "/sprites/idle.png" -end + if player1Character.y > floor_y then + player1Character.y = floor_y + player1Character.y_velocity = 0 + end + + -- P2 physics + player2Character.y_velocity = player2Character.y_velocity + gravity + player2Character.y = player2Character.y + player2Character.y_velocity + + if player2Character.y > floor_y then + player2Character.y = floor_y + player2Character.y_velocity = 0 + end + + -- Render + queueTextureForRender( + player1Character.current_sprite, + math.floor(player1Character.x), + math.floor(player1Character.y) + ) + + queueTextureForRender( + player2Character.current_sprite, + math.floor(player2Character.x), + math.floor(player2Character.y) + ) -function Update() - queueTextureForRender(player1Character.current_sprite, player1Character.x, player1Character.y) - queueTextureForRender(player2Character.current_sprite, player2Character.x, player2Character.y) + -- Input HandleP1Input() HandleP2Input() end |
