Skip to content

Commit

Permalink
Merge branch 'release/0.15.0.1521'
Browse files Browse the repository at this point in the history
  • Loading branch information
rm-code committed Jul 27, 2018
2 parents 8adbb40 + 4b34648 commit c57424d
Show file tree
Hide file tree
Showing 44 changed files with 391 additions and 266 deletions.
27 changes: 27 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,30 @@
# Version 0.15.0.1521 - 2018-07-27 (LÖVE 11.0)

## Additions
- Added functionality for saving log files to a folder in the safe directory when the game crashes.

## Fixes
- Fixed sprites not showing for connectable world objects in the map editor.
- Fixed camera panning not working on the map editor's map testing screen.
- Fixed crash caused by weapon stacks in the inventory screen.

## Removals
- Removed automatic camera tracking of moving characters (will be re-implemented in future versions).
- Removed automatic camera movement when selecting a different character (will be re-implemented in future versions).
- Removed hardcoded strings from help screen.

## Other Changes
- Changed targeted LÖVE version to 11.0 "Mysterious Mysteries".
- Changed the way audio sources are loaded, stored and played.
- Changed speed and transparency of pulsating overlays (movement paths, hit cones, ...).
- Changed explosion damage to fixed instead of random values.
- Changed how default texture pack is loaded.
- The default texture pack is always copied to the mods folder at the start of the game.
- The default texture pack is loaded directly from the mods folder.




# Version 0.14.0.1489 - 2018-01-26

## Additions
Expand Down
8 changes: 6 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# On The Roadside

[![Version](https://img.shields.io/badge/Version-0.14.0.1489-blue.svg)](https://github.com/rm-code/on-the-roadside/releases/latest)
[![LOVE](https://img.shields.io/badge/L%C3%96VE-0.10.2-EA316E.svg)](http://love2d.org/)
[![Version](https://img.shields.io/badge/Version-0.15.0.1521-blue.svg)](https://github.com/rm-code/on-the-roadside/releases/latest)
[![LOVE](https://img.shields.io/badge/L%C3%96VE-11.0-EA316E.svg)](http://love2d.org/)
[![Build Status](https://travis-ci.com/rm-code/On-The-Roadside.svg?token=q3rLXeyGTBN9VB2zsWMr&branch=develop)](https://travis-ci.com/rm-code/On-The-Roadside)

_On the Roadside_ is a turn-based strategy game in which you take control of a squad of mercenaries fighting for survival in a world shaped by unknown forces. It currently is in the very _early stages_ of development.
Expand All @@ -22,3 +22,7 @@ _On the Roadside_ is a turn-based strategy game in which you take control of a s

### Please note
This game is still in early stages of development by a one-man team ([@rm-code](https://twitter.com/rm_code)). I'm developing this game on my own in my free time and while I'm determined to make it as good and complete as possible there is no guarantee that it will ever be completed. That's why currently I am using the "pay what you want option" - If you decide that my work is worth your hard earned cash, you are a lovely person and I like you <3

### Generating the Documentation

OTR uses LuaDoc to generate a documentation. By default the documentation will be generated in a `../docs` folder.
2 changes: 1 addition & 1 deletion conf.lua
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ local PROJECT_IDENTITY = "rmcode_otr"

local PROJECT_VERSION = require( 'version' )

local LOVE_VERSION = "0.10.2"
local LOVE_VERSION = "11.0"

---
-- Initialise löve's config file.
Expand Down
29 changes: 6 additions & 23 deletions lib/TGFParser.lua
Original file line number Diff line number Diff line change
Expand Up @@ -32,9 +32,7 @@ local TGFParser = {
-- Line iterator
-- ------------------------------------------------

-- TODO love.filesystem.lines is currently bugged on Mac OS 10.13
-- therefore we have to use a quick workaround
-- local lines = love and love.filesystem.lines or io.lines;
local lines = love and love.filesystem.lines or io.lines;

-- ------------------------------------------------
-- Local Functions
Expand All @@ -53,26 +51,11 @@ local function loadFile( path )
local target = nodes;

-- Change the target table once the '#' separator is reached.
-- TODO love.filesystem.lines is currently bugged on Mac OS 10.13
-- therefore we have to use a quick workaround

if love then
local str = love.filesystem.read(path)
for line in str:gmatch("[^\r\n]+") do
if line == '#' then
target = edges;
else
target[#target + 1] = line;
end
end
else
-- Change the target table once the '#' separator is reached.
for line in io.lines( path ) do
if line == '#' then
target = edges;
else
target[#target + 1] = line;
end
for line in lines( path ) do
if line == '#' then
target = edges;
else
target[#target + 1] = line;
end
end

Expand Down
92 changes: 60 additions & 32 deletions main.lua
Original file line number Diff line number Diff line change
Expand Up @@ -19,13 +19,41 @@ local DEBUG_GRID_FLAG = '-g'
local DEBUG_FULLSCREEN_FLAG = '-f'
local DEBUG_WINDOWED_FLAG = '-w'

local SCREENS = {
bootloading = require( 'src.ui.screens.BootLoadingScreen' ),
mainmenu = require( 'src.ui.screens.MainMenu' ),
ingamemenu = require( 'src.ui.screens.IngameCombatMenu' ),
options = require( 'src.ui.screens.OptionsScreen' ),
changelog = require( 'src.ui.screens.ChangelogScreen' ),
combat = require( 'src.ui.screens.CombatScreen' ),
inventory = require( 'src.ui.screens.InventoryScreen' ),
help = require( 'src.ui.screens.HelpScreen' ),
gamescreen = require( 'src.ui.screens.GameScreen' ),
gameover = require( 'src.ui.screens.GameOverScreen' ),
loadgame = require( 'src.ui.screens.SavegameScreen' ),
confirm = require( 'src.ui.screens.ConfirmationModal' ),
information = require( 'src.ui.screens.InformationModal' ),
inputdialog = require( 'src.ui.screens.InputDialog' ),
maptest = require( 'src.ui.screens.MapTest' ),
mapeditor = require( 'src.ui.screens.MapEditor' ),
mapeditormenu = require( 'src.ui.screens.MapEditorMenu' ),
prefabeditor = require( 'src.ui.screens.PrefabEditor' ),
prefabeditormenu = require( 'src.ui.screens.PrefabEditorMenu' ),
editorloading = require( 'src.ui.mapeditor.EditorLoadingScreen' ),
keybindingeditor = require( 'src.ui.screens.KeybindingScreen' ),
keybindingmodal = require( 'src.ui.screens.KeybindingModal' ),
playerInfo = require( 'src.ui.screens.PlayerInfo' ),
}

-- ------------------------------------------------
-- Callbacks
-- Local Functions
-- ------------------------------------------------

function love.load( args )
Log.init()

---
-- Iterates over any provided command line arguments and activates the proper
-- mechanics.
--
local function handleCommandLineArguments( args )
for _, arg in pairs( args ) do
if arg == DEBUG_OUTPUT_FLAG then
Log.setDebugActive( true )
Expand All @@ -37,7 +65,12 @@ function love.load( args )
love.window.setFullscreen( false )
end
end
end

---
-- Prints some information about the game and the player's system.
--
local function printGameInfo()
local info = {}
info[#info + 1] = "==================="
info[#info + 1] = string.format( "Title: '%s'", getTitle() )
Expand All @@ -56,43 +89,35 @@ function love.load( args )
for _, line in ipairs( info ) do
Log.print( line )
end
end

-- ------------------------------------------------
-- Callbacks
-- ------------------------------------------------

function love.load( args )
Log.init()

handleCommandLineArguments( args )

local screens = {
bootloading = require( 'src.ui.screens.BootLoadingScreen' ),
mainmenu = require( 'src.ui.screens.MainMenu' ),
ingamemenu = require( 'src.ui.screens.IngameCombatMenu' ),
options = require( 'src.ui.screens.OptionsScreen' ),
changelog = require( 'src.ui.screens.ChangelogScreen' ),
combat = require( 'src.ui.screens.CombatScreen' ),
inventory = require( 'src.ui.screens.InventoryScreen' ),
help = require( 'src.ui.screens.HelpScreen' ),
gamescreen = require( 'src.ui.screens.GameScreen' ),
gameover = require( 'src.ui.screens.GameOverScreen' ),
loadgame = require( 'src.ui.screens.SavegameScreen' ),
confirm = require( 'src.ui.screens.ConfirmationModal' ),
information = require( 'src.ui.screens.InformationModal' ),
inputdialog = require( 'src.ui.screens.InputDialog' ),
maptest = require( 'src.ui.screens.MapTest' ),
mapeditor = require( 'src.ui.screens.MapEditor' ),
mapeditormenu = require( 'src.ui.screens.MapEditorMenu' ),
prefabeditor = require( 'src.ui.screens.PrefabEditor' ),
prefabeditormenu = require( 'src.ui.screens.PrefabEditorMenu' ),
editorloading = require( 'src.ui.mapeditor.EditorLoadingScreen' ),
keybindingeditor = require( 'src.ui.screens.KeybindingScreen' ),
keybindingmodal = require( 'src.ui.screens.KeybindingModal' ),
playerInfo = require( 'src.ui.screens.PlayerInfo' ),
}

ScreenManager.init( screens, 'bootloading' )
printGameInfo()

ScreenManager.init( SCREENS, 'bootloading' )

letterbox = Letterbox()

-- Create the actual debug grid, if the debug grid flag was set via command
-- line arguments.
if debugGrid then
debugGrid = DebugGrid()
end
end

function love.draw()
ScreenManager.draw()

if debugGrid then
DebugGrid.draw()
debugGrid:draw()
end

letterbox.draw()
Expand Down Expand Up @@ -202,6 +227,9 @@ function love.errhand( msg )
p = string.gsub(p, "\t", "")
p = string.gsub(p, "%[string \"(.-)\"%]", "%1")

-- Save a copy of the log to the crash dump folder.
Log.saveCrashDump()

local function draw()
local pos = love.window.toPixels(70)
love.graphics.clear(love.graphics.getBackgroundColor())
Expand Down
6 changes: 3 additions & 3 deletions res/data/items/weapons/Melee.lua
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ return {
subType = "Melee",
damage = 5,
reloadable = false,
sound = 'MELEE',
sound = 'sound_melee',
mode = {
{
name = "Slash",
Expand Down Expand Up @@ -47,7 +47,7 @@ return {
subType = "Melee",
damage = 4,
reloadable = false,
sound = 'MELEE',
sound = 'sound_melee',
mode = {
{
name = "Single",
Expand All @@ -73,7 +73,7 @@ return {
subType = "Melee",
damage = 2,
reloadable = false,
sound = 'MELEE',
sound = 'sound_melee',
mode = {
{
name = "Bite",
Expand Down
6 changes: 3 additions & 3 deletions res/data/items/weapons/Ranged.lua
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ return {
'humanoid'
},
subType = "Ranged",
sound = 'ASSAULT_RIFLE',
sound = 'sound_assault_rifle',
damage = 3,
reloadable = true,
mode = {
Expand Down Expand Up @@ -47,7 +47,7 @@ return {
'humanoid'
},
subType = "Ranged",
sound = 'ROCKET_LAUNCHER',
sound = 'sound_rocket_launcher',
damage = 8,
reloadable = true,
mode = {
Expand Down Expand Up @@ -75,7 +75,7 @@ return {
'humanoid'
},
subType = "Ranged",
sound = 'SHOTGUN',
sound = 'sound_shotgun',
damage = 2,
reloadable = true,
mode = {
Expand Down
4 changes: 2 additions & 2 deletions res/data/items/weapons/Thrown.lua
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ return {
subType = "Thrown",
damage = 5,
reloadable = false,
sound = 'MELEE',
sound = 'sound_thrown',
mode = {
{
name = "Throw",
Expand Down Expand Up @@ -44,7 +44,7 @@ return {
subType = "Thrown",
damage = 3,
reloadable = false,
sound = 'MELEE',
sound = 'sound_thrown',
mode = {
{
name = "Throw",
Expand Down
14 changes: 14 additions & 0 deletions res/sounds/info.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
return {
name = 'default',
sounds = {
['sound_door'] = { file = 'door.wav', type = 'static' },
['sound_select'] = { file = 'select.wav', type = 'static' },
['sound_assault_rifle'] = { file = 'ar.wav', type = 'static' },
['sound_shotgun'] = { file = 'ar.wav', type = 'static' },
['sound_climb'] = { file = 'climb.wav', type = 'static' },
['sound_explode'] = { file = 'explosion.wav', type = 'static' },
['sound_rocket_launcher'] = { file = 'rocket.wav', type = 'static' },
['sound_melee'] = { file = 'melee.wav', type = 'static' },
['sound_thrown'] = { file = 'melee.wav', type = 'static' },
}
}
7 changes: 7 additions & 0 deletions res/texturepacks/default/README.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
========================
!! WARNING !!
========================

The default texture pack will be overwritten automatically.

If you want to create your own texture pack you should copy and rename the default pack.
Loading

0 comments on commit c57424d

Please sign in to comment.