Skip to content

Commit c57424d

Browse files
committed
Merge branch 'release/0.15.0.1521'
2 parents 8adbb40 + 4b34648 commit c57424d

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

44 files changed

+391
-266
lines changed

CHANGELOG.md

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,30 @@
1+
# Version 0.15.0.1521 - 2018-07-27 (LÖVE 11.0)
2+
3+
## Additions
4+
- Added functionality for saving log files to a folder in the safe directory when the game crashes.
5+
6+
## Fixes
7+
- Fixed sprites not showing for connectable world objects in the map editor.
8+
- Fixed camera panning not working on the map editor's map testing screen.
9+
- Fixed crash caused by weapon stacks in the inventory screen.
10+
11+
## Removals
12+
- Removed automatic camera tracking of moving characters (will be re-implemented in future versions).
13+
- Removed automatic camera movement when selecting a different character (will be re-implemented in future versions).
14+
- Removed hardcoded strings from help screen.
15+
16+
## Other Changes
17+
- Changed targeted LÖVE version to 11.0 "Mysterious Mysteries".
18+
- Changed the way audio sources are loaded, stored and played.
19+
- Changed speed and transparency of pulsating overlays (movement paths, hit cones, ...).
20+
- Changed explosion damage to fixed instead of random values.
21+
- Changed how default texture pack is loaded.
22+
- The default texture pack is always copied to the mods folder at the start of the game.
23+
- The default texture pack is loaded directly from the mods folder.
24+
25+
26+
27+
128
# Version 0.14.0.1489 - 2018-01-26
229

330
## Additions

README.md

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# On The Roadside
22

3-
[![Version](https://img.shields.io/badge/Version-0.14.0.1489-blue.svg)](https://github.com/rm-code/on-the-roadside/releases/latest)
4-
[![LOVE](https://img.shields.io/badge/L%C3%96VE-0.10.2-EA316E.svg)](http://love2d.org/)
3+
[![Version](https://img.shields.io/badge/Version-0.15.0.1521-blue.svg)](https://github.com/rm-code/on-the-roadside/releases/latest)
4+
[![LOVE](https://img.shields.io/badge/L%C3%96VE-11.0-EA316E.svg)](http://love2d.org/)
55
[![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)
66

77
_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.
@@ -22,3 +22,7 @@ _On the Roadside_ is a turn-based strategy game in which you take control of a s
2222

2323
### Please note
2424
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
25+
26+
### Generating the Documentation
27+
28+
OTR uses LuaDoc to generate a documentation. By default the documentation will be generated in a `../docs` folder.

conf.lua

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ local PROJECT_IDENTITY = "rmcode_otr"
44

55
local PROJECT_VERSION = require( 'version' )
66

7-
local LOVE_VERSION = "0.10.2"
7+
local LOVE_VERSION = "11.0"
88

99
---
1010
-- Initialise löve's config file.

lib/TGFParser.lua

Lines changed: 6 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -32,9 +32,7 @@ local TGFParser = {
3232
-- Line iterator
3333
-- ------------------------------------------------
3434

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

3937
-- ------------------------------------------------
4038
-- Local Functions
@@ -53,26 +51,11 @@ local function loadFile( path )
5351
local target = nodes;
5452

5553
-- Change the target table once the '#' separator is reached.
56-
-- TODO love.filesystem.lines is currently bugged on Mac OS 10.13
57-
-- therefore we have to use a quick workaround
58-
59-
if love then
60-
local str = love.filesystem.read(path)
61-
for line in str:gmatch("[^\r\n]+") do
62-
if line == '#' then
63-
target = edges;
64-
else
65-
target[#target + 1] = line;
66-
end
67-
end
68-
else
69-
-- Change the target table once the '#' separator is reached.
70-
for line in io.lines( path ) do
71-
if line == '#' then
72-
target = edges;
73-
else
74-
target[#target + 1] = line;
75-
end
54+
for line in lines( path ) do
55+
if line == '#' then
56+
target = edges;
57+
else
58+
target[#target + 1] = line;
7659
end
7760
end
7861

main.lua

Lines changed: 60 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -19,13 +19,41 @@ local DEBUG_GRID_FLAG = '-g'
1919
local DEBUG_FULLSCREEN_FLAG = '-f'
2020
local DEBUG_WINDOWED_FLAG = '-w'
2121

22+
local SCREENS = {
23+
bootloading = require( 'src.ui.screens.BootLoadingScreen' ),
24+
mainmenu = require( 'src.ui.screens.MainMenu' ),
25+
ingamemenu = require( 'src.ui.screens.IngameCombatMenu' ),
26+
options = require( 'src.ui.screens.OptionsScreen' ),
27+
changelog = require( 'src.ui.screens.ChangelogScreen' ),
28+
combat = require( 'src.ui.screens.CombatScreen' ),
29+
inventory = require( 'src.ui.screens.InventoryScreen' ),
30+
help = require( 'src.ui.screens.HelpScreen' ),
31+
gamescreen = require( 'src.ui.screens.GameScreen' ),
32+
gameover = require( 'src.ui.screens.GameOverScreen' ),
33+
loadgame = require( 'src.ui.screens.SavegameScreen' ),
34+
confirm = require( 'src.ui.screens.ConfirmationModal' ),
35+
information = require( 'src.ui.screens.InformationModal' ),
36+
inputdialog = require( 'src.ui.screens.InputDialog' ),
37+
maptest = require( 'src.ui.screens.MapTest' ),
38+
mapeditor = require( 'src.ui.screens.MapEditor' ),
39+
mapeditormenu = require( 'src.ui.screens.MapEditorMenu' ),
40+
prefabeditor = require( 'src.ui.screens.PrefabEditor' ),
41+
prefabeditormenu = require( 'src.ui.screens.PrefabEditorMenu' ),
42+
editorloading = require( 'src.ui.mapeditor.EditorLoadingScreen' ),
43+
keybindingeditor = require( 'src.ui.screens.KeybindingScreen' ),
44+
keybindingmodal = require( 'src.ui.screens.KeybindingModal' ),
45+
playerInfo = require( 'src.ui.screens.PlayerInfo' ),
46+
}
47+
2248
-- ------------------------------------------------
23-
-- Callbacks
49+
-- Local Functions
2450
-- ------------------------------------------------
2551

26-
function love.load( args )
27-
Log.init()
28-
52+
---
53+
-- Iterates over any provided command line arguments and activates the proper
54+
-- mechanics.
55+
--
56+
local function handleCommandLineArguments( args )
2957
for _, arg in pairs( args ) do
3058
if arg == DEBUG_OUTPUT_FLAG then
3159
Log.setDebugActive( true )
@@ -37,7 +65,12 @@ function love.load( args )
3765
love.window.setFullscreen( false )
3866
end
3967
end
68+
end
4069

70+
---
71+
-- Prints some information about the game and the player's system.
72+
--
73+
local function printGameInfo()
4174
local info = {}
4275
info[#info + 1] = "==================="
4376
info[#info + 1] = string.format( "Title: '%s'", getTitle() )
@@ -56,43 +89,35 @@ function love.load( args )
5689
for _, line in ipairs( info ) do
5790
Log.print( line )
5891
end
92+
end
93+
94+
-- ------------------------------------------------
95+
-- Callbacks
96+
-- ------------------------------------------------
97+
98+
function love.load( args )
99+
Log.init()
100+
101+
handleCommandLineArguments( args )
59102

60-
local screens = {
61-
bootloading = require( 'src.ui.screens.BootLoadingScreen' ),
62-
mainmenu = require( 'src.ui.screens.MainMenu' ),
63-
ingamemenu = require( 'src.ui.screens.IngameCombatMenu' ),
64-
options = require( 'src.ui.screens.OptionsScreen' ),
65-
changelog = require( 'src.ui.screens.ChangelogScreen' ),
66-
combat = require( 'src.ui.screens.CombatScreen' ),
67-
inventory = require( 'src.ui.screens.InventoryScreen' ),
68-
help = require( 'src.ui.screens.HelpScreen' ),
69-
gamescreen = require( 'src.ui.screens.GameScreen' ),
70-
gameover = require( 'src.ui.screens.GameOverScreen' ),
71-
loadgame = require( 'src.ui.screens.SavegameScreen' ),
72-
confirm = require( 'src.ui.screens.ConfirmationModal' ),
73-
information = require( 'src.ui.screens.InformationModal' ),
74-
inputdialog = require( 'src.ui.screens.InputDialog' ),
75-
maptest = require( 'src.ui.screens.MapTest' ),
76-
mapeditor = require( 'src.ui.screens.MapEditor' ),
77-
mapeditormenu = require( 'src.ui.screens.MapEditorMenu' ),
78-
prefabeditor = require( 'src.ui.screens.PrefabEditor' ),
79-
prefabeditormenu = require( 'src.ui.screens.PrefabEditorMenu' ),
80-
editorloading = require( 'src.ui.mapeditor.EditorLoadingScreen' ),
81-
keybindingeditor = require( 'src.ui.screens.KeybindingScreen' ),
82-
keybindingmodal = require( 'src.ui.screens.KeybindingModal' ),
83-
playerInfo = require( 'src.ui.screens.PlayerInfo' ),
84-
}
85-
86-
ScreenManager.init( screens, 'bootloading' )
103+
printGameInfo()
104+
105+
ScreenManager.init( SCREENS, 'bootloading' )
87106

88107
letterbox = Letterbox()
108+
109+
-- Create the actual debug grid, if the debug grid flag was set via command
110+
-- line arguments.
111+
if debugGrid then
112+
debugGrid = DebugGrid()
113+
end
89114
end
90115

91116
function love.draw()
92117
ScreenManager.draw()
93118

94119
if debugGrid then
95-
DebugGrid.draw()
120+
debugGrid:draw()
96121
end
97122

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

230+
-- Save a copy of the log to the crash dump folder.
231+
Log.saveCrashDump()
232+
205233
local function draw()
206234
local pos = love.window.toPixels(70)
207235
love.graphics.clear(love.graphics.getBackgroundColor())

res/data/items/weapons/Melee.lua

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ return {
1414
subType = "Melee",
1515
damage = 5,
1616
reloadable = false,
17-
sound = 'MELEE',
17+
sound = 'sound_melee',
1818
mode = {
1919
{
2020
name = "Slash",
@@ -47,7 +47,7 @@ return {
4747
subType = "Melee",
4848
damage = 4,
4949
reloadable = false,
50-
sound = 'MELEE',
50+
sound = 'sound_melee',
5151
mode = {
5252
{
5353
name = "Single",
@@ -73,7 +73,7 @@ return {
7373
subType = "Melee",
7474
damage = 2,
7575
reloadable = false,
76-
sound = 'MELEE',
76+
sound = 'sound_melee',
7777
mode = {
7878
{
7979
name = "Bite",

res/data/items/weapons/Ranged.lua

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ return {
1212
'humanoid'
1313
},
1414
subType = "Ranged",
15-
sound = 'ASSAULT_RIFLE',
15+
sound = 'sound_assault_rifle',
1616
damage = 3,
1717
reloadable = true,
1818
mode = {
@@ -47,7 +47,7 @@ return {
4747
'humanoid'
4848
},
4949
subType = "Ranged",
50-
sound = 'ROCKET_LAUNCHER',
50+
sound = 'sound_rocket_launcher',
5151
damage = 8,
5252
reloadable = true,
5353
mode = {
@@ -75,7 +75,7 @@ return {
7575
'humanoid'
7676
},
7777
subType = "Ranged",
78-
sound = 'SHOTGUN',
78+
sound = 'sound_shotgun',
7979
damage = 2,
8080
reloadable = true,
8181
mode = {

res/data/items/weapons/Thrown.lua

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ return {
1414
subType = "Thrown",
1515
damage = 5,
1616
reloadable = false,
17-
sound = 'MELEE',
17+
sound = 'sound_thrown',
1818
mode = {
1919
{
2020
name = "Throw",
@@ -44,7 +44,7 @@ return {
4444
subType = "Thrown",
4545
damage = 3,
4646
reloadable = false,
47-
sound = 'MELEE',
47+
sound = 'sound_thrown',
4848
mode = {
4949
{
5050
name = "Throw",

res/sounds/info.lua

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
return {
2+
name = 'default',
3+
sounds = {
4+
['sound_door'] = { file = 'door.wav', type = 'static' },
5+
['sound_select'] = { file = 'select.wav', type = 'static' },
6+
['sound_assault_rifle'] = { file = 'ar.wav', type = 'static' },
7+
['sound_shotgun'] = { file = 'ar.wav', type = 'static' },
8+
['sound_climb'] = { file = 'climb.wav', type = 'static' },
9+
['sound_explode'] = { file = 'explosion.wav', type = 'static' },
10+
['sound_rocket_launcher'] = { file = 'rocket.wav', type = 'static' },
11+
['sound_melee'] = { file = 'melee.wav', type = 'static' },
12+
['sound_thrown'] = { file = 'melee.wav', type = 'static' },
13+
}
14+
}

res/texturepacks/default/README.txt

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
========================
2+
!! WARNING !!
3+
========================
4+
5+
The default texture pack will be overwritten automatically.
6+
7+
If you want to create your own texture pack you should copy and rename the default pack.

0 commit comments

Comments
 (0)