Skip to content

Commit

Permalink
Version 0.1.1
Browse files Browse the repository at this point in the history
  • Loading branch information
dewiniaid committed Dec 11, 2017
1 parent 7999b2a commit 07173ed
Show file tree
Hide file tree
Showing 4 changed files with 59 additions and 4 deletions.
8 changes: 6 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,10 @@ These all reference the keys on the top row of a US keyboard layout, *not* those

## TODO

Add some sort of persistent indicator for when timewarp is active.

Make minimum and maximum timewarp amounts configurable.

## Changelog

### 0.1.1 (2017-12-11)

* Add a simple indicator in the upper-right when timewarp is active.
51 changes: 50 additions & 1 deletion control.lua
Original file line number Diff line number Diff line change
@@ -1,6 +1,52 @@
local MINIMUM_SPEED = 0.125
local MAXIMUM_SPEED = 64


local function create_gui(player)
local top = player.gui.top
if top.TimeControlSpeedometer then
return
end

player.gui.top.add {
type = "label",
name = "TimeControlSpeedometer",
style = "bold_label_style",
caption = { "timecontrol.gui-speed", game.speed },
}

player.gui.top.TimeControlSpeedometer.style.visible = (game.speed ~= 1)
end

local function update_guis()
local enabled = game.speed ~= 1
for _, player in pairs(game.players) do
local label = player.gui.top.TimeControlSpeedometer
if enabled then
label.caption = { "timecontrol.gui-speed", game.speed }
end
label.style.visible = enabled

end
end


local function create_all_guis()
for _, player in pairs(game.players) do
create_gui(player)
end
end



script.on_init(create_all_guis)
script.on_configuration_changed(create_all_guis)
script.on_event(defines.events.on_player_created, function(event)
create_gui(game.players[event.player_index])
end)



local function timewarp(event, mult)
local player = game.players[event.player_index]
if not (player and player.permission_group and player.permission_group.allows_action(defines.server_command)) then
Expand Down Expand Up @@ -33,12 +79,15 @@ local function timewarp(event, mult)
msg = msg .. "-by"
end

game.print{msg, newspeed, player.name }
game.print { msg, newspeed, player.name }
game.speed = newspeed
update_guis()
end

script.on_event("timecontrol_normal", function(event) return timewarp(event, 0) end)
script.on_event("timecontrol_slower", function(event) return timewarp(event, 0.5) end)
script.on_event("timecontrol_faster", function(event) return timewarp(event, 2.0) end)




2 changes: 1 addition & 1 deletion info.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "TimeControl",
"version": "0.1.0",
"version": "0.1.1",
"title": "Time Control",
"author": "Dewin",
"contact": "https://github.com/dewiniaid/TimeControl",
Expand Down
2 changes: 2 additions & 0 deletions locale/en/locale.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@ speed-changed-by=__2__ changed game speed to __1__x.
speed-reset=Game speed reset to normal .
speed-reset-by=Game speed reset to normal by __2__.

gui-speed=Time Warp: __1__x

[controls]
timecontrol_normal=Normal speed
timecontrol_faster=Faster
Expand Down

0 comments on commit 07173ed

Please sign in to comment.