Line endings...be normalized!
This commit is contained in:
@@ -1,270 +1,270 @@
|
||||
-- sm-ssc fallback theme | script ring 03 | Gameplay.lua
|
||||
-- [en] This file is used to store settings that should be different in each
|
||||
-- game mode.
|
||||
|
||||
-- shakesoda calls this pump.lua
|
||||
|
||||
-- GetExtraColorThreshold()
|
||||
-- [en] returns the difficulty threshold in meter
|
||||
-- for songs that should be counted as boss songs.
|
||||
function GetExtraColorThreshold()
|
||||
sGame = GAMESTATE:GetCurrentGame():GetName()
|
||||
local Modes = {
|
||||
dance = 10,
|
||||
pump = 15,
|
||||
beat = 12,
|
||||
kb7 = 10,
|
||||
para = 10,
|
||||
techno = 10,
|
||||
lights = 10, -- lights shouldn't be playable
|
||||
}
|
||||
return Modes[sGame]
|
||||
end
|
||||
|
||||
-- GameCompatibleModes:
|
||||
-- [en] returns possible modes for ScreenSelectPlayMode
|
||||
function GameCompatibleModes()
|
||||
sGame = GAMESTATE:GetCurrentGame():GetName()
|
||||
local Modes = {
|
||||
dance = "Single,Double,Solo,Versus,Couple",
|
||||
pump = "Single,Double,HalfDouble,Versus,Couple",
|
||||
beat = "5Keys,7Keys,10Keys,14Keys",
|
||||
kb7 = "KB7",
|
||||
para = "Single",
|
||||
techno = "Single4,Single5,Single8,Double4,Double8",
|
||||
lights = "Single" -- lights shouldn't be playable
|
||||
}
|
||||
return Modes[sGame]
|
||||
end
|
||||
|
||||
function SelectProfileKeys()
|
||||
local sGame = GAMESTATE:GetCurrentGame():GetName()
|
||||
if sGame == "pump" then
|
||||
return "Up,Down,Start,Back,Center,DownLeft,DownRight"
|
||||
elseif sGame == "dance" then
|
||||
return "Up,Down,Start,Back,Up2,Down2"
|
||||
else
|
||||
return "Up,Down,Start,Back"
|
||||
end
|
||||
end
|
||||
|
||||
-- ScoreKeeperClass:
|
||||
-- [en] Determines the correct ScoreKeeper class to use.
|
||||
function ScoreKeeperClass()
|
||||
sGame = GAMESTATE:GetCurrentGame():GetName()
|
||||
local ScoreKeepers = {
|
||||
-- xxx: allow for ScoreKeeperShared when needed
|
||||
dance = "ScoreKeeperNormal",
|
||||
pump = "ScoreKeeperNormal",
|
||||
beat = "ScoreKeeperNormal",
|
||||
kb7 = "ScoreKeeperNormal",
|
||||
para = "ScoreKeeperNormal",
|
||||
techno = "ScoreKeeperNormal",
|
||||
ez2 = "ScoreKeeperNormal",
|
||||
ds3ddx = "ScoreKeeperNormal",
|
||||
maniax = "ScoreKeeperNormal",
|
||||
guitar = "ScoreKeeperGuitar"
|
||||
}
|
||||
return ScoreKeepers[sGame]
|
||||
end
|
||||
|
||||
-- ComboContinue:
|
||||
-- [en]
|
||||
function ComboContinue()
|
||||
sGame = GAMESTATE:GetCurrentGame():GetName()
|
||||
local Continue = {
|
||||
dance = GAMESTATE:GetPlayMode() == "PlayMode_Oni" and "TapNoteScore_W2" or "TapNoteScore_W3",
|
||||
pump = "TapNoteScore_W3",
|
||||
beat = "TapNoteScore_W3",
|
||||
kb7 = "TapNoteScore_W3",
|
||||
para = "TapNoteScore_W4"
|
||||
}
|
||||
return Continue[sGame]
|
||||
end
|
||||
|
||||
function ComboMaintain()
|
||||
sGame = GAMESTATE:GetCurrentGame():GetName()
|
||||
local Maintain = {
|
||||
dance = "TapNoteScore_W3",
|
||||
pump = "TapNoteScore_W4",
|
||||
beat = "TapNoteScore_W3",
|
||||
kb7 = "TapNoteScore_W3",
|
||||
para = "TapNoteScore_W4"
|
||||
}
|
||||
return Maintain[sGame]
|
||||
end
|
||||
|
||||
function ComboPerRow()
|
||||
sGame = GAMESTATE:GetCurrentGame():GetName()
|
||||
if sGame == "pump" then
|
||||
return true
|
||||
elseif GAMESTATE:GetPlayMode() == "PlayMode_Oni" then
|
||||
return true
|
||||
else
|
||||
return false
|
||||
end
|
||||
end
|
||||
|
||||
-- these need cleanup really.
|
||||
function HitCombo()
|
||||
sGame = GAMESTATE:GetCurrentGame():GetName()
|
||||
local Combo = {
|
||||
dance = 2,
|
||||
pump = 4,
|
||||
beat = 2,
|
||||
kb7 = 2,
|
||||
para = 2,
|
||||
guitar = 2
|
||||
}
|
||||
return Combo[sGame]
|
||||
end
|
||||
|
||||
function MissCombo()
|
||||
sGame = GAMESTATE:GetCurrentGame():GetName()
|
||||
local Combo = {
|
||||
dance = 2,
|
||||
pump = 4,
|
||||
beat = 0,
|
||||
kb7 = 0,
|
||||
para = 0,
|
||||
guitar = 0
|
||||
}
|
||||
return Combo[sGame]
|
||||
end
|
||||
|
||||
-- FailCombo:
|
||||
-- [en] The combo that causes game failure.
|
||||
function FailCombo()
|
||||
sGame = GAMESTATE:GetCurrentGame():GetName()
|
||||
local Combo = {
|
||||
dance = -1, -- ITG uses 30
|
||||
pump = 51, -- Pump Pro uses 30, real Pump uses 51
|
||||
beat = -1,
|
||||
kb7 = -1,
|
||||
para = -1,
|
||||
guitar = -1
|
||||
}
|
||||
return Combo[sGame]
|
||||
end
|
||||
|
||||
function RoutineSkinP1()
|
||||
sGame = GAMESTATE:GetCurrentGame():GetName()
|
||||
local Combo = {
|
||||
dance = "midi-routine-p1",
|
||||
pump = "cmd-routine-p1",
|
||||
beat = "default",
|
||||
kb7 = "default",
|
||||
para = "default",
|
||||
guitar = "default"
|
||||
}
|
||||
return Combo[sGame]
|
||||
end
|
||||
|
||||
function RoutineSkinP2()
|
||||
sGame = GAMESTATE:GetCurrentGame():GetName()
|
||||
local Combo = {
|
||||
dance = "midi-routine-p2",
|
||||
pump = "cmd-routine-p2",
|
||||
beat = "default",
|
||||
kb7 = "retrobar",
|
||||
para = "default",
|
||||
guitar = "default"
|
||||
}
|
||||
return Combo[sGame]
|
||||
end
|
||||
|
||||
-- todo: use tables for some of these -aj
|
||||
function HoldTiming()
|
||||
if GAMESTATE:GetCurrentGame():GetName() == "pump" then
|
||||
return 0
|
||||
else
|
||||
return PREFSMAN:GetPreference("TimingWindowSecondsHold")
|
||||
end
|
||||
end
|
||||
|
||||
function ShowHoldJudgments()
|
||||
return not GAMESTATE:GetCurrentGame():GetName() == "pump"
|
||||
end
|
||||
|
||||
function HoldHeadStep()
|
||||
if GAMESTATE:GetCurrentGame():GetName() == "pump" then
|
||||
return false
|
||||
else
|
||||
return true
|
||||
end
|
||||
end
|
||||
|
||||
function InitialHoldLife()
|
||||
if GAMESTATE:GetCurrentGame():GetName() == "pump" then
|
||||
return 0.05
|
||||
else
|
||||
return 1
|
||||
end
|
||||
end
|
||||
|
||||
function MaxHoldLife()
|
||||
if GAMESTATE:GetCurrentGame():GetName() == "pump" then
|
||||
return 0.05
|
||||
else
|
||||
return 1
|
||||
end
|
||||
end
|
||||
|
||||
function ImmediateHoldLetGo()
|
||||
if GAMESTATE:GetCurrentGame():GetName() == "pump" then
|
||||
return false
|
||||
else
|
||||
return true
|
||||
end
|
||||
end
|
||||
|
||||
function RollBodyIncrementsCombo()
|
||||
return false
|
||||
--[[ if GAMESTATE:GetCurrentGame():GetName() == "pump" then
|
||||
return false
|
||||
else
|
||||
return true
|
||||
end --]]
|
||||
end
|
||||
|
||||
function CheckpointsTapsSeparateJudgment()
|
||||
if GAMESTATE:GetCurrentGame():GetName() == "pump" then
|
||||
return false
|
||||
else
|
||||
return true
|
||||
end
|
||||
end
|
||||
|
||||
function ScoreMissedHoldsAndRolls()
|
||||
if GAMESTATE:GetCurrentGame():GetName() == "pump" then
|
||||
return false
|
||||
else
|
||||
return true
|
||||
end
|
||||
end
|
||||
|
||||
local tNotePositions = {
|
||||
-- StepMania 3.9/4.0
|
||||
Normal = {
|
||||
-144,
|
||||
144,
|
||||
},
|
||||
-- ITG
|
||||
Lower = {
|
||||
-125,
|
||||
145,
|
||||
}
|
||||
}
|
||||
|
||||
function GetTapPosition( sType )
|
||||
bCategory = (sType == 'Standard') and 1 or 2
|
||||
-- true: Normal
|
||||
-- false: Lower
|
||||
bPreference = GetUserPrefB("UserPrefNotePosition") and "Normal" or "Lower"
|
||||
tNotePos = tNotePositions[bPreference]
|
||||
return tNotePos[bCategory]
|
||||
end
|
||||
|
||||
function ComboUnderField()
|
||||
return GetUserPrefB("UserPrefComboUnderField")
|
||||
-- sm-ssc fallback theme | script ring 03 | Gameplay.lua
|
||||
-- [en] This file is used to store settings that should be different in each
|
||||
-- game mode.
|
||||
|
||||
-- shakesoda calls this pump.lua
|
||||
|
||||
-- GetExtraColorThreshold()
|
||||
-- [en] returns the difficulty threshold in meter
|
||||
-- for songs that should be counted as boss songs.
|
||||
function GetExtraColorThreshold()
|
||||
sGame = GAMESTATE:GetCurrentGame():GetName()
|
||||
local Modes = {
|
||||
dance = 10,
|
||||
pump = 15,
|
||||
beat = 12,
|
||||
kb7 = 10,
|
||||
para = 10,
|
||||
techno = 10,
|
||||
lights = 10, -- lights shouldn't be playable
|
||||
}
|
||||
return Modes[sGame]
|
||||
end
|
||||
|
||||
-- GameCompatibleModes:
|
||||
-- [en] returns possible modes for ScreenSelectPlayMode
|
||||
function GameCompatibleModes()
|
||||
sGame = GAMESTATE:GetCurrentGame():GetName()
|
||||
local Modes = {
|
||||
dance = "Single,Double,Solo,Versus,Couple",
|
||||
pump = "Single,Double,HalfDouble,Versus,Couple",
|
||||
beat = "5Keys,7Keys,10Keys,14Keys",
|
||||
kb7 = "KB7",
|
||||
para = "Single",
|
||||
techno = "Single4,Single5,Single8,Double4,Double8",
|
||||
lights = "Single" -- lights shouldn't be playable
|
||||
}
|
||||
return Modes[sGame]
|
||||
end
|
||||
|
||||
function SelectProfileKeys()
|
||||
local sGame = GAMESTATE:GetCurrentGame():GetName()
|
||||
if sGame == "pump" then
|
||||
return "Up,Down,Start,Back,Center,DownLeft,DownRight"
|
||||
elseif sGame == "dance" then
|
||||
return "Up,Down,Start,Back,Up2,Down2"
|
||||
else
|
||||
return "Up,Down,Start,Back"
|
||||
end
|
||||
end
|
||||
|
||||
-- ScoreKeeperClass:
|
||||
-- [en] Determines the correct ScoreKeeper class to use.
|
||||
function ScoreKeeperClass()
|
||||
sGame = GAMESTATE:GetCurrentGame():GetName()
|
||||
local ScoreKeepers = {
|
||||
-- xxx: allow for ScoreKeeperShared when needed
|
||||
dance = "ScoreKeeperNormal",
|
||||
pump = "ScoreKeeperNormal",
|
||||
beat = "ScoreKeeperNormal",
|
||||
kb7 = "ScoreKeeperNormal",
|
||||
para = "ScoreKeeperNormal",
|
||||
techno = "ScoreKeeperNormal",
|
||||
ez2 = "ScoreKeeperNormal",
|
||||
ds3ddx = "ScoreKeeperNormal",
|
||||
maniax = "ScoreKeeperNormal",
|
||||
guitar = "ScoreKeeperGuitar"
|
||||
}
|
||||
return ScoreKeepers[sGame]
|
||||
end
|
||||
|
||||
-- ComboContinue:
|
||||
-- [en]
|
||||
function ComboContinue()
|
||||
sGame = GAMESTATE:GetCurrentGame():GetName()
|
||||
local Continue = {
|
||||
dance = GAMESTATE:GetPlayMode() == "PlayMode_Oni" and "TapNoteScore_W2" or "TapNoteScore_W3",
|
||||
pump = "TapNoteScore_W3",
|
||||
beat = "TapNoteScore_W3",
|
||||
kb7 = "TapNoteScore_W3",
|
||||
para = "TapNoteScore_W4"
|
||||
}
|
||||
return Continue[sGame]
|
||||
end
|
||||
|
||||
function ComboMaintain()
|
||||
sGame = GAMESTATE:GetCurrentGame():GetName()
|
||||
local Maintain = {
|
||||
dance = "TapNoteScore_W3",
|
||||
pump = "TapNoteScore_W4",
|
||||
beat = "TapNoteScore_W3",
|
||||
kb7 = "TapNoteScore_W3",
|
||||
para = "TapNoteScore_W4"
|
||||
}
|
||||
return Maintain[sGame]
|
||||
end
|
||||
|
||||
function ComboPerRow()
|
||||
sGame = GAMESTATE:GetCurrentGame():GetName()
|
||||
if sGame == "pump" then
|
||||
return true
|
||||
elseif GAMESTATE:GetPlayMode() == "PlayMode_Oni" then
|
||||
return true
|
||||
else
|
||||
return false
|
||||
end
|
||||
end
|
||||
|
||||
-- these need cleanup really.
|
||||
function HitCombo()
|
||||
sGame = GAMESTATE:GetCurrentGame():GetName()
|
||||
local Combo = {
|
||||
dance = 2,
|
||||
pump = 4,
|
||||
beat = 2,
|
||||
kb7 = 2,
|
||||
para = 2,
|
||||
guitar = 2
|
||||
}
|
||||
return Combo[sGame]
|
||||
end
|
||||
|
||||
function MissCombo()
|
||||
sGame = GAMESTATE:GetCurrentGame():GetName()
|
||||
local Combo = {
|
||||
dance = 2,
|
||||
pump = 4,
|
||||
beat = 0,
|
||||
kb7 = 0,
|
||||
para = 0,
|
||||
guitar = 0
|
||||
}
|
||||
return Combo[sGame]
|
||||
end
|
||||
|
||||
-- FailCombo:
|
||||
-- [en] The combo that causes game failure.
|
||||
function FailCombo()
|
||||
sGame = GAMESTATE:GetCurrentGame():GetName()
|
||||
local Combo = {
|
||||
dance = -1, -- ITG uses 30
|
||||
pump = 51, -- Pump Pro uses 30, real Pump uses 51
|
||||
beat = -1,
|
||||
kb7 = -1,
|
||||
para = -1,
|
||||
guitar = -1
|
||||
}
|
||||
return Combo[sGame]
|
||||
end
|
||||
|
||||
function RoutineSkinP1()
|
||||
sGame = GAMESTATE:GetCurrentGame():GetName()
|
||||
local Combo = {
|
||||
dance = "midi-routine-p1",
|
||||
pump = "cmd-routine-p1",
|
||||
beat = "default",
|
||||
kb7 = "default",
|
||||
para = "default",
|
||||
guitar = "default"
|
||||
}
|
||||
return Combo[sGame]
|
||||
end
|
||||
|
||||
function RoutineSkinP2()
|
||||
sGame = GAMESTATE:GetCurrentGame():GetName()
|
||||
local Combo = {
|
||||
dance = "midi-routine-p2",
|
||||
pump = "cmd-routine-p2",
|
||||
beat = "default",
|
||||
kb7 = "retrobar",
|
||||
para = "default",
|
||||
guitar = "default"
|
||||
}
|
||||
return Combo[sGame]
|
||||
end
|
||||
|
||||
-- todo: use tables for some of these -aj
|
||||
function HoldTiming()
|
||||
if GAMESTATE:GetCurrentGame():GetName() == "pump" then
|
||||
return 0
|
||||
else
|
||||
return PREFSMAN:GetPreference("TimingWindowSecondsHold")
|
||||
end
|
||||
end
|
||||
|
||||
function ShowHoldJudgments()
|
||||
return not GAMESTATE:GetCurrentGame():GetName() == "pump"
|
||||
end
|
||||
|
||||
function HoldHeadStep()
|
||||
if GAMESTATE:GetCurrentGame():GetName() == "pump" then
|
||||
return false
|
||||
else
|
||||
return true
|
||||
end
|
||||
end
|
||||
|
||||
function InitialHoldLife()
|
||||
if GAMESTATE:GetCurrentGame():GetName() == "pump" then
|
||||
return 0.05
|
||||
else
|
||||
return 1
|
||||
end
|
||||
end
|
||||
|
||||
function MaxHoldLife()
|
||||
if GAMESTATE:GetCurrentGame():GetName() == "pump" then
|
||||
return 0.05
|
||||
else
|
||||
return 1
|
||||
end
|
||||
end
|
||||
|
||||
function ImmediateHoldLetGo()
|
||||
if GAMESTATE:GetCurrentGame():GetName() == "pump" then
|
||||
return false
|
||||
else
|
||||
return true
|
||||
end
|
||||
end
|
||||
|
||||
function RollBodyIncrementsCombo()
|
||||
return false
|
||||
--[[ if GAMESTATE:GetCurrentGame():GetName() == "pump" then
|
||||
return false
|
||||
else
|
||||
return true
|
||||
end --]]
|
||||
end
|
||||
|
||||
function CheckpointsTapsSeparateJudgment()
|
||||
if GAMESTATE:GetCurrentGame():GetName() == "pump" then
|
||||
return false
|
||||
else
|
||||
return true
|
||||
end
|
||||
end
|
||||
|
||||
function ScoreMissedHoldsAndRolls()
|
||||
if GAMESTATE:GetCurrentGame():GetName() == "pump" then
|
||||
return false
|
||||
else
|
||||
return true
|
||||
end
|
||||
end
|
||||
|
||||
local tNotePositions = {
|
||||
-- StepMania 3.9/4.0
|
||||
Normal = {
|
||||
-144,
|
||||
144,
|
||||
},
|
||||
-- ITG
|
||||
Lower = {
|
||||
-125,
|
||||
145,
|
||||
}
|
||||
}
|
||||
|
||||
function GetTapPosition( sType )
|
||||
bCategory = (sType == 'Standard') and 1 or 2
|
||||
-- true: Normal
|
||||
-- false: Lower
|
||||
bPreference = GetUserPrefB("UserPrefNotePosition") and "Normal" or "Lower"
|
||||
tNotePos = tNotePositions[bPreference]
|
||||
return tNotePos[bCategory]
|
||||
end
|
||||
|
||||
function ComboUnderField()
|
||||
return GetUserPrefB("UserPrefComboUnderField")
|
||||
end
|
||||
Reference in New Issue
Block a user