Skip to content

Commit

Permalink
Merge pull request #1345 from etternagame/develop
Browse files Browse the repository at this point in the history
0.74.3 merge
  • Loading branch information
poco0317 authored Jan 11, 2025
2 parents 28cba30 + 8435c30 commit 55b0586
Show file tree
Hide file tree
Showing 48 changed files with 580 additions and 365 deletions.
15 changes: 15 additions & 0 deletions .changelog/Release_0-74-3.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# Release Changelog


## [0.74.3] - 2025-01-11 - Hotfix

### Added
- Default popn Noteskin. You could always load popn files with .pms and now they are more easily playable - [290c4f3](../../../commit/290c4f3badef58b4d9f96a7c8cd5a5162785bdde)
- Rebirth tip types for a grade counter and to completely hide it - [92a8ea0](../../../commit/92a8ea0360e7e9cd4b1392c8e0f618ab4bc9d4f8) [f231a60](../../../commit/f231a6010e91915f48b80be76f553b0bfeb05277)

### Changed
- Compile error message when messing with our special enums - [911d482](../../../commit/911d48272cb553b09992257b0e6feaed1110810a)

### Fixed
- Invisible last notes and holds in long songs - [43bc1c1](../../../commit/43bc1c1f04e7f868702796c14d029cf1ea655af5)
- Random assert crashes when using the new (default) unpitched rates - [104119a](../../../commit/104119a1eff74ce22316a84153a074ad9cd35720)
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@
.vscode
.vs
.idea
*.kdev4
/.kdev4
/[Bb]uild
/out/

Expand Down
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>")

# PROJECT WIDE SETUP
project(Etterna
VERSION 0.74.2
VERSION 0.74.3
HOMEPAGE_URL https://github.com/etternagame/etterna/
LANGUAGES C CXX ASM)

Expand Down
Binary file modified Data/splash.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
39 changes: 39 additions & 0 deletions NoteSkins/popn/default/Key Receptor.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
-- the funniest move around.
local button = Var "Button"

-- making sure the player isn't on downscroll
-- then doing a flip.
local flip = GAMESTATE:GetPlayerState(PLAYER_1):GetCurrentPlayerOptions():Reverse() == 1

local t = Def.ActorFrame {
Def.Sprite {
Texture = "_receptor",
Frame0000 = 0,
Delay0000 = 1,
InitCommand = function(self)
-- i love scaling textures
self:diffuse(color(colors[button])):zoomx(0.5)
if not flip then
self:rotationx(180)
end
end
},
Def.Sprite {
Texture = "_flash",
Frame0000 = 0,
Delay0000 = 1,
InitCommand = function(self)
self:diffuse(color(colors[button])):diffusealpha(0):zoomx(0.5)
if not flip then
self:rotationx(180)
end
end,
PressCommand = function(self)
self:diffusealpha(0.25)
end,
LiftCommand = function(self)
self:accelerate(0.25):diffusealpha(0)
end
}
}
return t
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions NoteSkins/popn/default/Key Tap Explosion Bright.redir
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
_blank
1 change: 1 addition & 0 deletions NoteSkins/popn/default/Key Tap Explosion Dim.redir
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Key Tap Explosion Bright
14 changes: 14 additions & 0 deletions NoteSkins/popn/default/Key Tap Lift.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
local t = Def.ActorFrame {
Def.Sprite {
Texture = NOTESKIN:GetPath("", "lift")

Frame0000 = 0,
Delay0000 = 1,

InitCommand = function(self)
self:zoomx(0.5)
end
}
}

return t
19 changes: 19 additions & 0 deletions NoteSkins/popn/default/Key Tap Note.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
-- i keep telling myself this is the funniest thing i've seen.
local button = Var "Button"

local t = Def.ActorFrame {
Def.Sprite {
-- because there's not really a point of putting snaps on it,
-- if you actually want it to have snaps, use 0.74.0+ or
-- contact me.
Texture = "_bar",
Frame0000 = 0,
Delay0000 = 1,

InitCommand = function(self)
-- have to zoom these by a half because notefield is a fcuk.
self:diffuse(color(colors[button])):zoomx(0.5)
end
},
}
return t
73 changes: 73 additions & 0 deletions NoteSkins/popn/default/NoteSkin.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
local ret = ... or {}

-- doing a global color move so i can just not repeat these lines of code,
-- which is probably dumb but i'll take responsibility for it.
colors = {
["Left White"] = "#ffffff",
["Left Yellow"] = "#ffff00",
["Left Green"] = "#00ff00",
["Left Blue"] = "#0000ff",
["Red"] = "#ff0000",
["Right Blue"] = "#0000ff",
["Right Green"] = "#00ff00",
["Right Yellow"] = "#ffff00",
["Right White"] = "#ffffff",
}

-- i am not gonna make separate textures for these, feel free to make some if you want to not do this.
ret.RedirTable = {
["Left White"] = "Key",
["Left Yellow"] = "Key",
["Left Green"] = "Key",
["Left Blue"] = "Key",
["Red"] = "Key",
["Right Blue"] = "Key",
["Right Green"] = "Key",
["Right Yellow"] = "Key",
["Right White"] = "Key",
}

local OldRedir = ret.Redir

ret.Redir = function(sButton, sElement)
sButton, sElement = OldRedir(sButton, sElement)

--Point the head files back to the tap note
if string.find(sElement, "Head") or sElement == "Tap Fake" then
sElement = "Tap Note"
end

sButton = ret.RedirTable[sButton]

return sButton, sElement
end

local OldFunc = ret.Load
function ret.Load()
local t = OldFunc()

-- The main "Explosion" part just loads other actors; don't rotate
-- it. The "Hold Explosion" part should not be rotated.
if Var "Element" == "Explosion" or Var "Element" == "Roll Explosion" then
t.BaseRotationZ = nil
end
return t
end

-- where did ret.PartsToRotate go, to the dance store?
-- anyways you will not need it.

ret.Blank = {
["Hold Explosion"] = true,
["Roll Explosion"] = true,
["Hold Topcap Active"] = true,
["Hold Topcap Inactive"] = true,
["Roll Topcap Active"] = true,
["Roll Topcap Inactive"] = true,
["Hold Tail Active"] = true,
["Hold Tail Inactive"] = true,
["Roll Tail Active"] = true,
["Roll Tail Inactive"] = true
}

return ret
4 changes: 4 additions & 0 deletions NoteSkins/popn/default/README.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
Deco - sonicjoplus

This skin is made so people can finally get to experience pop'n with a (mildly decent) skin.
Do whatever you will with this.
Binary file added NoteSkins/popn/default/_bar.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added NoteSkins/popn/default/_flash.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added NoteSkins/popn/default/_receptor.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added NoteSkins/popn/default/lift.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
39 changes: 39 additions & 0 deletions NoteSkins/popn/default/metrics.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
[Global]
FallbackNoteSkin=common

[NoteDisplay]
TapNoteAnimationIsVivid=0
DrawHoldHeadForTapsOnSameRow=1
TapNoteAnimationLength=1 // none of these matter because Lua is handling the animation, not sprites.
TapAdditionAnimationLength=1
TapMineAnimationLength=1
TapLiftAnimationLength=1
TapFakeAnimationLength=1
HoldHeadAnimationLength=1
HoldTopCapAnimationLength=1
HoldBottomCapAnimationLength=1
HoldBodyAnimationLength=1
HoldTailAnimationLength=1

StartDrawingHoldBodyOffsetFromHead=0
StopDrawingHoldBodyOffsetFromTail=0

HoldLetGoGrayPercent=.25

HoldHeadIsAboveWavyParts=1
HoldTailIsAboveWavyParts=1

ReverseDrawOrder=111111111
FlipHeadAndTailWhenReverse=1
FlipHoldBodyWhenReverse=1

TapNoteAdditionTextureCoordOffsetX=0
TapNoteAdditionTextureCoordOffsetY=0
TapNoteNoteColorTextureCoordSpacingX=0
TapNoteNoteColorTextureCoordSpacingY=0
TapFakeNoteColorTextureCoordSpacingX=0
TapFakeNoteColorTextureCoordSpacingY=0
HoldHeadNoteColorTextureCoordSpacingX=0
HoldHeadNoteColorTextureCoordSpacingY=0

TapFakeNoteOpacityMultiplier=0.25
42 changes: 41 additions & 1 deletion Themes/Rebirth/BGAnimations/footer.lua
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ t[#t+1] = LoadFont("Common Normal") .. {
end
}

t[#t+1] = LoadFont("Common Normal") .. {
local quoteortip = LoadFont("Common Normal") .. {
Name = "QuoteOrTip",
InitCommand = function(self)
self:halign(0)
Expand All @@ -75,4 +75,44 @@ t[#t+1] = LoadFont("Common Normal") .. {
end
}

local gradecounter = LoadFont("Common Normal") .. {
Name = "GradeCounter",
InitCommand = function(self)
local aaaaa = WHEELDATA:GetTotalClearsByGrade("Grade_Tier01")
local aaaa = WHEELDATA:GetTotalClearsByGrade("Grade_Tier02") + WHEELDATA:GetTotalClearsByGrade("Grade_Tier03") + WHEELDATA:GetTotalClearsByGrade("Grade_Tier04")
local aaa = WHEELDATA:GetTotalClearsByGrade("Grade_Tier05") + WHEELDATA:GetTotalClearsByGrade("Grade_Tier06") + WHEELDATA:GetTotalClearsByGrade("Grade_Tier07")
local aa = WHEELDATA:GetTotalClearsByGrade("Grade_Tier08") + WHEELDATA:GetTotalClearsByGrade("Grade_Tier09") + WHEELDATA:GetTotalClearsByGrade("Grade_Tier10")
local a = WHEELDATA:GetTotalClearsByGrade("Grade_Tier11") + WHEELDATA:GetTotalClearsByGrade("Grade_Tier12") + WHEELDATA:GetTotalClearsByGrade("Grade_Tier13")
self:xy(actuals.Width * allowedPercentageForQuote / 2, -actuals.Height / 2)
self:zoom(textSize)
self:maxwidth(actuals.Width * allowedPercentageForQuote / textSize - textZoomFudge)
self:settextf("%d %s %d %s %d %s %d %s %d %s",
aaaaa, getGradeStrings("Grade_Tier01"),
aaaa, getGradeStrings("Grade_Tier04"),
aaa, getGradeStrings("Grade_Tier07"),
aa, getGradeStrings("Grade_Tier10"),
a, getGradeStrings("Grade_Tier13"))
registerActorToColorConfigElement(self, "main", "PrimaryText")
-- uh
local yea = 0
function attributive(when, gren) --
yea = yea + when
self:AddAttribute(yea, {Length = #getGradeStrings(gren), Diffuse = colorByGrade(gren)})
end
attributive(#tostring(aaaaa) + 1, "Grade_Tier01")
attributive(3 + #getGradeStrings("Grade_Tier01") + #tostring(aaaa) + 1, "Grade_Tier04")
attributive(3 + #getGradeStrings("Grade_Tier04") + #tostring(aaa) + 1, "Grade_Tier07")
attributive(3 + #getGradeStrings("Grade_Tier07") + #tostring(aa) + 1, "Grade_Tier10")
attributive(3 + #getGradeStrings("Grade_Tier10") + #tostring(a) + 1, "Grade_Tier13")
end,
}

local tiptype = themeConfig:get_data().global.TipType

if tiptype == 3 then
t[#t+1] = gradecounter
elseif tiptype == 1 or tiptype == 2 then
t[#t+1] = quoteortip
end

return t
45 changes: 42 additions & 3 deletions Themes/Rebirth/BGAnimations/playerInfoFrame/settings.lua
Original file line number Diff line number Diff line change
Expand Up @@ -6197,9 +6197,48 @@ local function rightFrame()
DisplayName = translations["TipType"],
Type = "SingleChoice",
Explanation = translations["TipTypeExplanation"],
Choices = choiceSkeleton("Tips", "Quotes"),
Directions = optionDataToggleDirectionsFUNC("tipType", 1, 2),
ChoiceIndexGetter = optionDataToggleIndexGetterFUNC("tipType", 1),
Choices = {
{
Name = "Tips",
DisplayName = "Tips",
ChosenFunction = function()
optionData["tipType"].set(1)
end
},
{
Name = "Quotes",
DisplayName = "Quotes",
ChosenFunction = function()
optionData["tipType"].set(2)
end
},
{
Name = "GradeCounter",
DisplayName = "Grade Counter",
ChosenFunction = function()
optionData["tipType"].set(3)
end
},
{
Name = "Nothing",
DisplayName = "Nothing",
ChosenFunction = function()
optionData["tipType"].set(4)
end
}
},
ChoiceIndexGetter = function(self)
v = optionData["tipType"].get()
if v == 1 then
return 1
elseif v == 2 then
return 2
elseif v == 3 then
return 3
else
return 4
end
end,
},
{
Name = "Set BG Fit Mode",
Expand Down
4 changes: 2 additions & 2 deletions Themes/Rebirth/Scripts/00 ThemeInfo.lua
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
THEMEINFO = {
Name = "Rebirth",
Version = "11",
Date = "20241225",
Version = "12",
Date = "20250111",
Author = "Celebelian, poco0317, and the Etterna Team"
}

Expand Down
2 changes: 1 addition & 1 deletion Themes/Rebirth/Scripts/01 theme_config.lua
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
local defaultConfig = {
global = {
TipType = 1, -- 1 = tips, 2 = quotes ...
TipType = 1, -- 1 = tips, 2 = quotes, 3 = grade counter, 4 = nothing ...
ShowVisualizer = true,
FallbackToAverageColorBG = true, -- wheel bg only
StaticBackgrounds = false,
Expand Down
Loading

0 comments on commit 55b0586

Please sign in to comment.