Skip to content

Commit

Permalink
Merge pull request #1248 from stepmania/master
Browse files Browse the repository at this point in the history
Update 5_0 branch
  • Loading branch information
kyzentun committed Aug 10, 2016
2 parents 073ba9f + 074d244 commit 45e0787
Show file tree
Hide file tree
Showing 68 changed files with 4,257 additions and 632 deletions.
2 changes: 1 addition & 1 deletion CMake/SMDefs.cmake
@@ -1,7 +1,7 @@
# Set up version numbers according to the new scheme.
set(SM_VERSION_MAJOR 5)
set(SM_VERSION_MINOR 0)
set(SM_VERSION_PATCH 11)
set(SM_VERSION_PATCH 12)
set(SM_VERSION_TRADITIONAL "${SM_VERSION_MAJOR}.${SM_VERSION_MINOR}.${SM_VERSION_PATCH}")

execute_process(COMMAND git rev-parse --short HEAD
Expand Down
6 changes: 3 additions & 3 deletions CMake/SetupFfmpeg.cmake
Expand Up @@ -51,9 +51,9 @@ if (NOT WITH_EXTERNAL_WARNINGS)
endif()

list(APPEND SM_FFMPEG_MAKE
"make"
$(MAKE)
)
if (WITH_FFMPEG_JOBS GREATER 1)
if (WITH_FFMPEG_JOBS GREATER 0)
list(APPEND SM_FFMPEG_MAKE "-j${WITH_FFMPEG_JOBS}")
endif()

Expand All @@ -69,7 +69,7 @@ if (IS_DIRECTORY "${SM_FFMPEG_SRC_DIR}")
else()
# --shlibdir=$our_installdir/stepmania-$VERSION
externalproject_add("ffmpeg"
DOWNLOAD_COMMAND git clone "--branch" "n${SM_FFMPEG_VERSION}" "--depth" "1" "git://source.ffmpeg.org/ffmpeg.git" "${SM_FFMPEG_SRC_DIR}"
DOWNLOAD_COMMAND git clone "--branch" "n${SM_FFMPEG_VERSION}" "--depth" "1" "git://github.com/stepmania/ffmpeg.git" "${SM_FFMPEG_SRC_DIR}"
CONFIGURE_COMMAND "${FFMPEG_CONFIGURE}"
BUILD_COMMAND "${SM_FFMPEG_MAKE}"
UPDATE_COMMAND ""
Expand Down
7 changes: 7 additions & 0 deletions Docs/Changelog_language.txt
Expand Up @@ -16,6 +16,13 @@ Example:
This means that three strings were added to the "ScreenDebugOverlay" section,
"Mute actions", "Mute actions on", and "Mute actions off".

2016/06/24
----------
* [OptionNames] Double Tap
* [OptionTitles] AllowHoldForOptions
* [OptionExplanations] AllowHoldForOptions
* [ScreenGameplay] GiveUpSelectText

2016/01/18
----------
* [ScreenEdit] Clear timing in region
Expand Down
49 changes: 49 additions & 0 deletions Docs/Changelog_sm5.txt
Expand Up @@ -4,6 +4,55 @@ The StepMania 5 Changelog covers all post-sm-ssc changes. For a list of changes
from StepMania 4 alpha 5 to sm-ssc v1.2.5, see Changelog_sm-ssc.txt.
________________________________________________________________________________

2016/06/28
----------
* [Gameplay] Moved pause menu logic to a script in _fallback. Added
documentation to help other themes implement a pause menu.

2016/06/24
----------
* [SelectMusic] Added AllowHoldForOptions preference to disable holding start
to go to the player options screen. [kyzentun]
* [General] Back button will only back out of the screen on a press, not when
it is still being held from the previous screen. [kyzentun]

2016/06/12
----------
* [ScreenSyncOverlay] Moved actors to lua to make them themable. [kyzentun]

2016/06/09
----------
* [Gameplay] Ready and Go announcer sounds no longer play simultaneously. If
the Ready animation doesn't exist and the Go animation exists, only the
Go announcer sound is played. If neither animation exists, only the Ready
announcer sound is played. [kyzentun]

2016/06/07
----------
* [NotesWriterSM] Stops, delays, and warps that occur on the same row are now
summed correctly. Fixes bug that deleted warps that were on the same row
as a stop. [kyzentun]
* [Sound] Ignore invalid SoundDriver preference. [kyzentun]

2016/06/06
----------
* [Language] Traditional Chinese translation added. [ddrtime]

2016/05/25
----------
* [MemoryCards] Fixed bug that caused loading profiles from usb drives to
crash. [djpohly]

2016/05/20
----------
* [Global] Removed UndocumentedFeature lua function because it was just a way
to crash with a message. [kyzentun]


2016/05/11
----------
* [Minimaid] Fixed crash that occurred when the minimaid lights driver was
selected, but no minimaid device was connected. [wolfman2000]

================================================================================
StepMania 5.0.11 | 20160401
Expand Down
1 change: 0 additions & 1 deletion Docs/Luadoc/Lua.xml
Expand Up @@ -191,7 +191,6 @@
<Function name='Trace'/>
<Function name='TrailToCustomDifficulty'/>
<Function name='URLEncode'/>
<Function name='UndocumentedFeature'/>
<Function name='UnlockRewardTypeToLocalizedString'/>
<Function name='update_centering'/>
<Function name='Var'/>
Expand Down
6 changes: 2 additions & 4 deletions Docs/Themerdocs/actordef.txt
@@ -1,6 +1,5 @@
[SM5 public nightly build | last update 2014/aug 04]
This is a list of all the known Actor classes in SM5. You can use these by
prefixing "Def." on the end of the name (e.g. Def.PaneDisplay).
This is a list of all the Actor classes available to Lua in SM5. You can
use these by prepend a "Def." to the the class name (e.g. Def.PaneDisplay).

Actor
ActorFrame
Expand All @@ -9,7 +8,6 @@ ActorMultiTexture
ActorMultiVertex
ActorProxy
ActorScroller
ActorSound
Banner
BGAnimation
BitmapText
Expand Down
108 changes: 108 additions & 0 deletions Docs/Themerdocs/pause_menu.md
@@ -0,0 +1,108 @@
# Purpose

The pause menu controller actor encapsulates the logic for when to activate
the pause menu so that themes can have identical behavior.

Creating an interactive menu for the player to use is still left for the
theme to do.


# Functionality

## Pausing Logic

Two buttons are recognized as usable for pausing: Select, Back

If one of those buttons is pressed twice, the pause menu appears.

As the pause menu provides choices for exiting or restarting the song,
holding Start, Select, or Back to exit the song in the old way is ignored.

If the presses are more than 1 second apart, or less than 0.1 seconds apart,
it does not count. If any other button is held down or pressed at the same
time, it does not count.

### Secondary method

Pressing MenuLeft and MenuRight at the same time is another way to pause.


# Theme Logic

### Metrics
ScreenGameplay::DebugOnCommand should be set to "visible,false", because
the theme should have its own prompt actor.

Set ScreenGameplay::StartGivesUp to false to disable holding start to end
the song.

Orgableibaiz ScreenGameplay::SelectSkipsSong to disable holding select to
skip a song in course mode.
```
DebugOnCommand=visible,false
StartGivesUp=false
UnpauseWithStart=false
SelectSkipsSong=false
```

## Overview

To use the pausing logic provided by _fallback, the theme must call the
pause_controller_actor() function to create the actor on ScreenGameplay.
```lua
t[#t+1]= pause_controller_actor()
```

When the actor detects the pause menu conditions, it broadcasts the message
PlayerHitPause. Make a handler for this message to take care of pausing the
game and presenting the menu. The params table for the message has two
fields: ```pn``` and ```button```
```lua
PlayerHitPauseMessageCommand= function(self, params)
gameplay_pause_count= gameplay_pause_count + 1
screen_gameplay:PauseGame(true)
old_overlay_visible= screen_gameplay:GetChild("Overlay"):GetVisible()
screen_gameplay:GetChild("Overlay"):visible(true)
local fg= screen_gameplay:GetChild("SongForeground")
if fg then
old_fg_visible= fg:GetVisible()
fg:visible(false)
end
prompt_actor:playcommand("Hide")
show_menu(params.pn)
end
```


## Prompting

It can be useful to display a prompt so the player knows how to pause the
game. When a pause button is pressed, the ShowPausePrompt message is
broadcast, with the player number and button (similar to the PlayerHitPause
message).
```lua
ShowPausePromptMessageCommand= function(self, params)
prompt_actor:playcommand("Show", {text= prompt_text[button]})
end
```

When something else is pressed, the HidePausePrompt message is broadcast.
```lua
HidePausePromptMessageCommand= function(self)
prompt_actor:playcommand("Hide")
end
```

## Other Considerations

### Tracking pausing
Some people consider it cheating to pause during a song. So increment a
counter when pausing the game and display it on the evaluation screen.

### Foreground effects
Hide the foreground when showing the pause menu to make the menu usable.
Unhide it when unpausing.

### Overlay
If something hid the overlay, or whatever layer the pause menu actor is in,
unhide it. Optionally restore its status when unpausing.
4 changes: 2 additions & 2 deletions NoteSkins/instructions.txt
Expand Up @@ -20,11 +20,11 @@ kb7 | DJMax 7 Keys/O2Jam (6 Keys + 1 Center)
ez2 | Ez2Dancer (3 Panels with 2 Hands, 3 Panels with 4 Hands and 6 Panels with 4 Hands(Double))
para | Para Para Paradise (5 Panels)
ds3ddx | Dance Station 3DDX (4 Panels with 4 Hands)
beat | Beatmania (5,7 and 14(double) Keys + Scratch, "10(double) Keys Gameplay Broken")
beat | Beatmania (5, 7, 10(Double) and 14(double) Keys + Scratch)
maniax | Dance Maniax (4 and 8(Double) Hand Receptors)
techno | TechnoMotion (4, 5, 8, 8(Double), 10(Double) and 16(Double) Panels)
popn | Pop'n Music (5 and 9 Keys)
lights | Lights (For Arcade Cab Lights, Unused)
karaoke | Karaoke (Unimplemented)

3) extract based on steps 1 and 2.
3) extract based on steps 1 and 2.

0 comments on commit 45e0787

Please sign in to comment.