Skip to content

Commit

Permalink
Merge pull request #2 from Takkkom/main
Browse files Browse the repository at this point in the history
SimpleStyle (1080p)を0.6.0に対応
  • Loading branch information
0auBSQ authored Oct 28, 2024
2 parents e71c3c7 + da52b67 commit 16964f6
Show file tree
Hide file tree
Showing 128 changed files with 999 additions and 13 deletions.
7 changes: 6 additions & 1 deletion System/SimpleStyle (1080p)/ConfigConfig.ini
Original file line number Diff line number Diff line change
Expand Up @@ -46,4 +46,9 @@ Config_KeyAssign_Menu_Highlight=486,99

Config_KeyAssign_Font=462,96

Config_KeyAssign_Move=30
Config_KeyAssign_Move=30


Config_Calibration_OffsetText=300,288
Config_Calibration_InfoText=8,550
Config_Calibration_Highlights=371,724,371,209,774,724,371,209,1179,724,371,209
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
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.
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.
Binary file modified System/SimpleStyle (1080p)/Graphics/3_DaniSelect/DanPlates.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.
Empty file.
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
{
"Regular": {
"": {
"UP": [ "0" ],
"DOWN": [ "0" ],
"DANCER": [ "0" ],
"FOOTER": [ "0" ],
"MOB": [ "0" ],
"RUNNER": [ "0" ]
},
"Dango": {
"UP": [ "0" ],
"DOWN": [ "0" ],
"DANCER": [ "0" ],
"FOOTER": [ "0" ],
"MOB": [ "0" ],
"RUNNER": [ "0" ]
},
"Clouds": {
"UP": [ "0" ],
"DOWN": [ "0" ],
"DANCER": [ "0" ],
"FOOTER": [ "0" ],
"MOB": [ "0" ],
"RUNNER": [ "0" ]
},
"Forest": {
"UP": [ "0" ],
"DOWN": [ "0" ],
"DANCER": [ "0" ],
"FOOTER": [ "0" ],
"MOB": [ "0" ],
"RUNNER": [ "0" ]
},
"Dashy": {
"UP": [ "0" ],
"DOWN": [ "0" ],
"DANCER": [ "0" ],
"FOOTER": [ "0" ],
"MOB": [ "0" ],
"RUNNER": [ "0" ]
}
},
"Dan": {
"Summer": {
"UP": [ "0" ]
},
"Fall": {
"UP": [ "0" ]
},
"Winter": {
"UP": [ "0" ]
},
"Spring": {
"UP": [ "0" ]
}
},
"Tower": {
"": {
"DOWN": [ "0", "0", "0" ]
},
"Day": {
"DOWN": [ "0" ]
},
"Sunset": {
"DOWN": [ "0" ]
},
"Mountain": {
"DOWN": [ "0" ]
},
"Event": {
"DOWN": [ "0" ]
}
}
}
Binary file modified System/SimpleStyle (1080p)/Graphics/6_Result/CrownEffect.png
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
3 changes: 3 additions & 0 deletions System/SimpleStyle (1080p)/Modules/Modal/Config.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{

}
48 changes: 48 additions & 0 deletions System/SimpleStyle (1080p)/Modules/Modal/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
# Modal Lua Customization Guide

## Methods

- (bool) isAnimationFinished()

Returns if the currently playing modal animation is finished, when returning "true" enter is pressable again to move to the next modal orreturn to the song select screen

- (void) registerNewModal(int player, int rarity, int modal_type, object modal_info, object modal_visual_ref)

Method called every time a new modal is registered including its related information

Includes the following arguments:
```
- (int) player: The player related to the modal (between 1 and 5)
- (int) rarity: The rarity of the unlocked asset (between 0 (Poor) and 6 (Mythical)), unused for Coins
- (int) modal_type: The type of unlocked asset (0: Coins, 1: Character, 2: Puchichara, 3: Title, 4: Song)
- (object) modal_info: Asset related information, modal_type dependent:
> Coins -> (long) modal_info: The coin value of the play
> Character -> (CCharacter) modal_info: The unlocked character information data (never nil)
> Puchichara -> (CPuchichara) modal_info: The unlocked puchichara information data (never nil)
> Title -> (NameplateUnlockable) modal_info: The unlocked nameplate information data (never nil)
> Song -> (SongNode?) modal_info: The unlocked song information data (can be nil)
- (object) modal_visual_ref: Asset related visuals (or extra info), modal_type dependent:
> Coins -> (long) modal_visual_ref: The total count of coins after the play
> Character -> (CTexture?) modal_visual_ref: The character render as displayed in my room (can be nil)
> Puchichara -> nil
> Title -> (LuaNamePlateScript) modal_visual_ref: A reference to the Nameplate Lua script (never nil except if broken skin)
> Song -> (CTexture?) modal_visual_ref: The song preimage, with the size value set to the same value as in the song select menu (can be nil)
```

- (void) loadAssets()

Method where all resource allocation should be included, called at each skin reload and at launch

- (void) update()

The regular update loop, for example to increment time counters, plays before draw()

- (void) draw()

For displayables, played at each result screen Draw() iteration

## Types

TBD
207 changes: 207 additions & 0 deletions System/SimpleStyle (1080p)/Modules/Modal/Script.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,207 @@
import ('System.Drawing')

-- Modal info
local modal_current_type = 0
local modal_current_rarity = 1
local modal_current_player = 1
local modal_current_info = nil
local modal_current_visual = nil

-- Modal graphics
local icon_players = { }
local modal_tx = { }
local modal_tx_coin = nil
local ttk_modal_header = nil
local ttk_modal_body = nil

-- Modal sounds
local modal_sfx = { }
local modal_sfx_coin = nil

-- Fonts
local font_modal_header = nil
local font_modal_body = nil
local font_modal_plate = nil

-- Modal counter
local modal_duration = 500 -- 2000
local modal_counter = 0
local script_busy = false

-- After the item is revealed, a circle glow or smth like that?
local modal_loopanim_duration = 1000
local modal_loopanim_counter = 0

-- Song modal cache
local modal_preimage_ref = nil

-- Tmp (until new format)
local modal_asset_id = 0

function isAnimationFinished()
return not script_busy
end

-- modal_asset_informations: Character object, Coin count, Nameplate unlockable whole object, etc... having all the necessary information
-- modal_asset_visual_references: Character textures table, Song preimage (?) or supporting visuals, might be null for some modal types
function registerNewModal(player, rarity, modal_type, modal_asset_informations, modal_asset_visual_references)
local _modal_header = ""
local _modal_body = ""
modal_current_type = modal_type
modal_current_rarity = rarity
modal_current_player = player
modal_current_info = modal_asset_informations
modal_current_visual = modal_asset_visual_references
modal_counter = 0
modal_loopanim_counter = 0
script_busy = true

if modal_type == 0 then
-- Coin
modal_current_rarity = 1
_modal_header = getLocalizedString("MODAL_TITLE_COIN")
_modal_body = getLocalizedString("MODAL_MESSAGE_COIN", tostring(modal_asset_informations), tostring(modal_asset_visual_references)) -- 0: Delta coin, 1: Total coin
debugLog(_modal_body)

modal_sfx_coin:PlayStart()

elseif modal_type == 1 then
-- Character
-- > modal_asset_informations: CCharacter
-- > modal_asset_visual_references: CTexture?
_modal_header = getLocalizedString("MODAL_TITLE_CHARA")
_modal_body = modal_current_info.metadata:tGetName()

elseif modal_type == 2 then
-- Puchichara
-- > modal_asset_informations: CPuchichara
-- > modal_asset_visual_references:
_modal_header = getLocalizedString("MODAL_TITLE_PUCHI")
_modal_body = modal_current_info.metadata:tGetName()

elseif modal_type == 3 then
-- Title
-- > modal_asset_informations: NameplateUnlockable
-- > modal_asset_visual_references: CLuaNamePlateScript
_modal_header = getLocalizedString("MODAL_TITLE_NAMEPLATE")
_modal_body = modal_asset_informations.Value.nameplateInfo.cld:GetString("")
ttk_modal_body = createTitleTextureKey(_modal_body, font_modal_plate, 99999, Color.FromArgb(0,0,0,1), Color.FromArgb(0,0,0,0))

elseif modal_type == 4 then
-- Song
-- > modal_asset_informations: CSongListNode
-- > modal_asset_visual_references: CTexture (Preimage)
_modal_header = getLocalizedString("MODAL_TITLE_SONG")
_modal_body = (modal_current_info ~= nil) and modal_current_info.ldTitle:GetString("") or "??? (Not found)"
if (modal_current_info ~= nil) then
modal_preimage_ref = modal_current_visual(modal_current_info)
else
modal_preimage_ref = nil
end

end

ttk_modal_header = createTitleTextureKey(_modal_header, font_modal_header, 99999)
if modal_type ~= 3 then
ttk_modal_body = createTitleTextureKey(_modal_body, font_modal_body, 99999)
end

-- Tmp
modal_asset_id = math.max(1, math.min(5, modal_current_rarity + 1))

if modal_type ~= 0 then
modal_sfx[modal_asset_id]:PlayStart()
end

end

function loadAssets()
config = loadConfig("Config.json")

for i = 1, 5 do
icon_players[i] = loadTexture(tostring(i).."P.png")
end

-- Tmp, to change with the new structure later
for i = 0, 4 do
modal_tx[i + 1] = loadTexture(tostring(i)..".png")
modal_sfx[i + 1] = loadSound(tostring(i)..".ogg", "soundeffect")
end
modal_tx_coin = loadTexture("Coin.png")
modal_sfx_coin = loadSound("Coin.ogg", "soundeffect")

font_modal_header = loadFontRenderer(84, "regular")
font_modal_body = loadFontRenderer(84, "regular")
font_modal_plate = loadFontRenderer(16, "regular")

end

function update()
if modal_counter <= modal_duration then
script_busy = true
modal_counter = modal_counter + (1000 * fps.deltaTime)
else
script_busy = false
modal_loopanim_counter = modal_loopanim_counter + (1000 * fps.deltaTime)
if modal_loopanim_counter >= modal_loopanim_duration then
modal_loopanim_counter = 0
end
end




-- Idea: If button press and not finished, directly set modal_counter to modal_duration and cut the appearing animation?
end

function draw()
icon_players[modal_current_player]:t2D_DisplayImage(0, 0)

tx_header = getTextTex(ttk_modal_header, false, false)

if modal_current_type == 0 then
-- Coin
modal_tx_coin:t2D_DisplayImage(0, 0)

tx_header:t2D_DisplayImage_AnchorCenter(960,180)
tx_body = getTextTex(ttk_modal_body, false, false)
tx_body:t2D_DisplayImage_AnchorCenter(960,490)
else
-- Others
modal_tx[modal_asset_id]:t2D_DisplayImage(0, 0)

tx_header:t2D_DisplayImage_AnchorCenter(960,180)

if modal_current_type == 1 then
-- Character
if modal_current_visual ~= nil then
modal_current_visual:t2D_DisplayImage(0,260)
end
tx_body = getTextTex(ttk_modal_body, false, false)
tx_body:t2D_DisplayImage_AnchorCenter(960,390)
elseif modal_current_type == 2 then
-- Puchichara
if modal_current_info.tx ~= nil then
modal_current_info.tx:t2D_DisplayImage_AnchorCenter(960,490)
end
tx_body = getTextTex(ttk_modal_body, false, false)
tx_body:t2D_DisplayImage_AnchorCenter(960,790)
elseif modal_current_type == 3 then
-- Nameplate Title
tx_title = getTextTex(ttk_modal_body, false, false)
modal_current_visual:DrawTitlePlate(960, 490, 255, modal_current_info.Value.nameplateInfo.iType, tx_title, modal_current_rarity, modal_current_info.Key)
elseif modal_current_type == 4 then
-- Song
if modal_preimage_ref ~= nil then
modal_preimage_ref:t2D_DisplayImage_AnchorCenter(960,490)
end
tx_body = getTextTex(ttk_modal_body, false, false)
tx_body:t2D_DisplayImage_AnchorCenter(960,790)
else
-- Custom modals for custom unlockables in the future??
tx_body = getTextTex(ttk_modal_body, false, false)
tx_body:t2D_DisplayImage_AnchorCenter(960,490)
end
end

end
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading

0 comments on commit 16964f6

Please sign in to comment.