diff --git a/config-definitions.json b/config-definitions.json index 0f343e5..eab9741 100644 --- a/config-definitions.json +++ b/config-definitions.json @@ -48,6 +48,18 @@ "default": false }, + "separator_d": {}, + "badges":{ + "type": "selection", + "label": "Skill Level", + "default": "NONE", + "values": ["NONE", "SKILLED", "EXPERT", "EXPERT (MASTERY)", "LOWER PRO", + "LOWER PRO (MASTERY)", "UPPER PRO", "UPPER PRO (MASTERY)", "LOWER MASTER", "LOWER MASTER (MASTERY)", + "UPPER MASTER", "UPPER MASTER (MASTERY)", "GRANDMASTER", "GRANDMASTER+"] + }, + + "separator_e": {}, + "words": { "type": "selection", "label": "Language", @@ -55,7 +67,7 @@ "values": ["EN", "DE", "SK", "test2"] }, - "separator_d": {}, + "separator_f": {}, "Audio": { "type": "label" }, "audio_systemVoice": { @@ -64,7 +76,7 @@ "default": false }, - "separator_e": {}, + "separator_g": {}, "Gameplay": { "type": "label" }, "gameplay_ucDifferentColor": { @@ -100,7 +112,7 @@ "values": ["ALL", "CRITICAL (or worse)", "NEAR (or worse)", "NONE"] }, - "separator_f": {}, + "separator_h": {}, "Debug": { "type": "label" }, "debug_showInformation": { diff --git a/scripts/components/dancheck.lua b/scripts/components/dancheck.lua new file mode 100644 index 0000000..daaafb0 --- /dev/null +++ b/scripts/components/dancheck.lua @@ -0,0 +1,70 @@ +local badges = game.GetSkinSetting("badges") + +local none = gfx.CreateSkinImage("dan/none.png",1) + +dan = { + gfx.CreateSkinImage("dan/SKILLED.png",1), + gfx.CreateSkinImage("dan/EXPERT.png",1), + gfx.CreateSkinImage("dan/EXPERT (MASTERY).png",1), + gfx.CreateSkinImage("dan/LOWER PRO.png",1), + gfx.CreateSkinImage("dan/LOWER PRO (MASTERY).png",1), + gfx.CreateSkinImage("dan/UPPER PRO.png",1), + gfx.CreateSkinImage("dan/UPPER PRO (MASTERY).png",1), + gfx.CreateSkinImage("dan/LOWER MASTER.png",1), + gfx.CreateSkinImage("dan/LOWER MASTER (MASTERY).png",1), + gfx.CreateSkinImage("dan/UPPER MASTER.png",1), + gfx.CreateSkinImage("dan/UPPER MASTER (MASTERY).png",1), + gfx.CreateSkinImage("dan/GRANDMASTER.png",1), + gfx.CreateSkinImage("dan/GRANDMASTER+.png",1), +} + +local badger = function (yes) + if badges == "NONE" or yes == true then + danbadge = none + +elseif badges == "SKILLED" then + danbadge = dan[1] + +elseif badges == "EXPERT" then + danbadge = dan[2] + +elseif badges == "EXPERT (MASTERY)" then + danbadge = dan[3] + +elseif badges == "LOWER PRO" then + danbadge = dan[4] + +elseif badges == "LOWER PRO (MASTERY)" then + danbadge = dan[5] + +elseif badges == "UPPER PRO" then + danbadge = dan[6] + +elseif badges == "UPPER PRO (MASTERY)" then + danbadge = dan[7] + +elseif badges == "LOWER MASTER" then + danbadge = dan[8] + +elseif badges == "LOWER MASTER (MASTERY)" then + danbadge = dan[9] + +elseif badges == "UPPER MASTER" then + danbadge = dan[10] + +elseif badges == "UPPER MASTER (MASTERY)" then + danbadge = dan[11] + +elseif badges == "GRANDMASTER" then + danbadge = dan[12] + +elseif badges == "GRANDMASTER+" then + danbadge = dan[13] + + end + return danbadge +end + + + +return badger \ No newline at end of file diff --git a/scripts/components/danmaker.lua b/scripts/components/danmaker.lua deleted file mode 100644 index 7dc2c95..0000000 --- a/scripts/components/danmaker.lua +++ /dev/null @@ -1,88 +0,0 @@ -local Dan = { - Badge = nil; - NormW = 107; - NormH = 29; - CusW = 294*0.32; - CusH = 84 *0.32; - GameW = 294*0.32; - GameH = 84*0.32 -} - -local d_badge = { - none = gfx.CreateSkinImage("dan/none.png", 0); - sk = gfx.CreateSkinImage("dan/SKILLED.png", 0); - Ex = gfx.CreateSkinImage("dan/EXPERT.png", 0); - ExM = gfx.CreateSkinImage("dan/EXPERT (MASTERY).png", 0); - LwP = gfx.CreateSkinImage("dan/LOWER PRO.png", 0); - LwPM = gfx.CreateSkinImage("dan/LOWER PRO (MASTERY).png", 0); - UpP = gfx.CreateSkinImage("dan/UPPER PRO.png", 0); - UpPM = gfx.CreateSkinImage("dan/UPPER PRO (MASTERY).png", 0); - LM = gfx.CreateSkinImage("dan/LOWER MASTER.png", 0); - LMM = gfx.CreateSkinImage("dan/LOWER MASTER (MASTERY).png", 0); - UpM = gfx.CreateSkinImage("dan/UPPER MASTER.png", 0); - UpMM = gfx.CreateSkinImage("dan/UPPER MASTER (MASTERY).png", 0); - GM = gfx.CreateSkinImage("dan/GRANDMASTER.png", 0); - GMP = gfx.CreateSkinImage("dan/GRANDMASTER+.png", 0); -} - -if game.GetSkinSetting('Skill LV') == "None" then - Dan.Badge = d_badge.none - Dan.PosW = Dan.NormW - Dan.PosH = Dan.NormH - Dan.GameW = 294*0.32 - Dan.GameH = 84*0.32 -elseif game.GetSkinSetting('Skill LV') == "Skilled" then - Dan.Badge = d_badge.sk - Dan.PosW = Dan.CusW - Dan.PosH = Dan.CusH -elseif game.GetSkinSetting('Skill LV') == "Expert" then - Dan.Badge = d_badge.Ex - Dan.PosW = Dan.CusW - Dan.PosH = Dan.CusH -elseif game.GetSkinSetting('Skill LV') == "Expert (Mastery)" then - Dan.Badge = d_badge.ExM - Dan.PosW = Dan.CusW - Dan.PosH = Dan.CusH -elseif game.GetSkinSetting('Skill LV') == "Lower Pro" then - Dan.Badge = d_badge.LwP - Dan.PosW = Dan.CusW - Dan.PosH = Dan.CusH -elseif game.GetSkinSetting('Skill LV') == "Lower Pro (Mastery)" then - Dan.Badge = d_badge.LwPM - Dan.PosW = Dan.CusW - Dan.PosH = Dan.CusH -elseif game.GetSkinSetting('Skill LV') == "Upper Pro" then - Dan.Badge = d_badge.UpP - Dan.PosW = Dan.CusW - Dan.PosH = Dan.CusH -elseif game.GetSkinSetting('Skill LV') == "Upper Pro (Mastery)" then - Dan.Badge = d_badge.UpPM - Dan.PosW = Dan.CusW - Dan.PosH = Dan.CusH -elseif game.GetSkinSetting('Skill LV') == "Lower Master" then - Dan.Badge = d_badge.LM - Dan.PosW = Dan.CusW - Dan.PosH = Dan.CusH -elseif game.GetSkinSetting('Skill LV') == "Lower Master (Mastery)" then - Dan.Badge = d_badge.LMM - Dan.PosW = Dan.CusW - Dan.PosH = Dan.CusH -elseif game.GetSkinSetting('Skill LV') == "Upper Master" then - Dan.Badge = d_badge.UpM - Dan.PosW = Dan.CusW - Dan.PosH = Dan.CusH -elseif game.GetSkinSetting('Skill LV') == "Upper Master (Mastery)" then - Dan.Badge = d_badge.UpMM - Dan.PosW = Dan.CusW - Dan.PosH = Dan.CusH -elseif game.GetSkinSetting('Skill LV') == "Grand Master" then - Dan.Badge = d_badge.GM - Dan.PosW = Dan.CusW - Dan.PosH = Dan.CusH -elseif game.GetSkinSetting('Skill LV') == "Grand Master +" then - Dan.Badge = d_badge.GMP - Dan.PosW = Dan.CusW - Dan.PosH = Dan.CusH -end - -return Dan \ No newline at end of file diff --git a/scripts/components/volforceWindow.lua b/scripts/components/volforceWindow.lua index 432132f..a3d54e3 100644 --- a/scripts/components/volforceWindow.lua +++ b/scripts/components/volforceWindow.lua @@ -1,22 +1,76 @@ +local vfBrackets = {0, 10, 12, 14, 15, 16, 17, 18, 19, 20, 24} +local stNum = 1 -local volforceBadgeImage = gfx.CreateSkinImage("volforce/10.png", 0); +if not volforceAmount then + volforceAmount = -1 +end + +local function handleForce(vf) + volforceAmount = vf + for i = 1, 10 do + local top = vfBrackets[i+1] + local down = vfBrackets[i] + if vf < top or i == 10 then + vfNum = i + local range = top - down + for b = 1, 4 do + if vf < (down + b*0.25*range) or b == 4 then + starsCount = b + break + end + end + break + end + if i > 7 then + stNum = 2 + else + stNum = 1 + end + end +end + +handleForce(volforceAmount) + + volforceBadgeImage = gfx.CreateSkinImage("volforce/"..vfNum..".png",1) + vfStar = gfx.CreateSkinImage("volforce/stars/"..stNum..".png",1) + +function render(deltatime, x, y,size,iftxt,amount) + + volforceAmount = amount -function render(deltatime, x, y) gfx.LoadSkinFont('Digital-Serial-Bold.ttf') gfx.TextAlign(gfx.TEXT_ALIGN_LEFT + gfx.TEXT_ALIGN_MIDDLE) - - local volforceAmount = game.GetSkinSetting('_volforce') or 0; - -- Draw volforce badge gfx.BeginPath(); - gfx.ImageRect(x, y, 42, 42, volforceBadgeImage, 1, 0); - + gfx.ImageRect(x-8, y-16, size*1.5, size*1.5, volforceBadgeImage, 1, 0); + if iftxt == true then + for i = 1, starsCount do + divider = 0 + if starsCount == 1 then + divider = 18 + gfx.BeginPath(); + gfx.ImageRect(x+divider+(i-1)*divider, y+32.5, size/4, size/4, vfStar, 1, 0); + elseif starsCount == 2 then + divider = 13 + gfx.BeginPath(); + gfx.ImageRect(x+divider+(i-1)*(divider-2), y+32.5, size/4, size/4, vfStar, 1, 0); + elseif starsCount == 3 then + divider = 8.25 + gfx.BeginPath(); + gfx.ImageRect(x+divider+(i-1)*(divider+2), y+32.5, size/4, size/4, vfStar, 1, 0); + elseif starsCount == 4 then + divider = 5 + gfx.BeginPath(); + gfx.ImageRect(x+(divider-1)+(i-1)*(divider+5), y+32.5, size/4, size/4, vfStar, 1, 0); + end + end -- Draw volforce label gfx.FontSize(11) gfx.Text('VOLFORCE', x + 47, y + 14); gfx.FontSize(18) - gfx.Text(string.format('%.3f', volforceAmount), x + 47, y + 30); + gfx.Text(string.format('%.3f', amount), x + 47, y + 30); + end end return { diff --git a/scripts/downloadscreen.lua b/scripts/downloadscreen.lua index 3742513..395cbb0 100644 --- a/scripts/downloadscreen.lua +++ b/scripts/downloadscreen.lua @@ -235,27 +235,26 @@ function render(deltaTime) gfx.ResetScissor() render_cursor() gfx.ResetTransform() - gfx.Translate(resX/2,0) - getgrad() - gettop() + + Dim.updateResolution() + Dim.transformToScreenSpace() + + getgrad(resX,resY) + gettop(resX,resY) foot.drawNaut(deltaTime) if needsReload then reload_songs() end if screenState == 1 then render_level_filters() - elseif screenState == 2 then render_sorting_selection() end + render_sorting_selection() render_loading() render_hotkeys() - local fifthX = resX/2 - local fifthY = resY/5 - local fourthX = resX/4 - local fourthY = resY/4 - --draw text search + soffset = soffset * 0.8 - draw_search(fifthX,50, -fifthX/3-200, fifthY/4) + draw_search(100,50, -100/3-200, 100/4) end @@ -420,7 +419,7 @@ function advance_selection(steps) end end -function render_level_filters() --this do now +function render_level_filters() gfx.Save() gfx.ResetTransform() gfx.BeginPath() @@ -432,10 +431,10 @@ function render_level_filters() --this do now x = (resY/2) y = (resX/2) + (i - 1) * 40 if selectedLevels[i] then gfx.FillColor(255,255,0) else gfx.FillColor(255,255,255) end - gfx.Text(tostring(i), x+290, y/1.4-130) + gfx.Text(tostring(i), x+290-5, y/1.4-130-9) if i == 1 then - bruhX = x+279 - bruhY = y-295 + (levelcursor*28.5) + bruhX = x+279-5 + bruhY = y-295-9 + (levelcursor*28.5) end end --box @@ -451,25 +450,24 @@ function render_sorting_selection() gfx.Save() gfx.ResetTransform() gfx.BeginPath() - gfx.Rect(0,0, resX, resY) - gfx.FillColor(0,0,0,200) - gfx.Fill() gfx.FillColor(255,255,255) gfx.TextAlign(gfx.TEXT_ALIGN_LEFT + gfx.TEXT_ALIGN_TOP) - gfx.FontSize(60) - gfx.Text("Sorting method:", 10, 10) + gfx.FontSize(20) + gfx.Text("Sorting method:", resX-400, 100) gfx.BeginPath() gfx.Rect(resX, resY, 150, 44) gfx.StrokeColor(255,128,0) gfx.StrokeWidth(2) gfx.Stroke() - gfx.FontSize(40) + gfx.FontSize(20) gfx.TextAlign(gfx.TEXT_ALIGN_CENTER + gfx.TEXT_ALIGN_MIDDLE) + gfx.Scissor(resX-350, 120,400,20) for i, opt in ipairs(sortingOptions) do - y = (resX/2) + (i - (sortingcursor + 1)) * 40 + y = 110 + (i - sortingcursor) *20 if selectedSorting == opt then gfx.FillColor(255,255,255) else gfx.FillColor(127,127,127) end - gfx.Text(opt, resX/2, y) + gfx.Text(string.upper(opt), resX-300, y) end + gfx.ResetScissor() end function update_search_text(active, text) diff --git a/scripts/gameplay/song_panel.lua b/scripts/gameplay/song_panel.lua index 3e5940c..5981b14 100644 --- a/scripts/gameplay/song_panel.lua +++ b/scripts/gameplay/song_panel.lua @@ -42,23 +42,6 @@ local tickTransitions = function (deltaTime) end local demoMode = function (songTitle,songArtist) - --[[ - gfx.BeginPath(); - local tw, th = gfx.ImageSize(demopanel); - th = (Dim.design.width / tw) * th; - gfx.BeginPath(); - gfx.ImageRect(0, 0, Dim.design.width, Dim.design.height,temp, 1, 0); - gfx.BeginPath(); - gfx.FillColor(50,80,120,100) - gfx.Rect((Dim.design.width/4)-29, th+62, Dim.design.width/1.75, th/1.75); - gfx.Fill() - gfx.BeginPath(); - gfx.FillColor(50,120,80,100) - gfx.Rect((Dim.design.width/4)+15, th+129, Dim.design.width/2.12, th/2.25); - gfx.Fill() - gfx.BeginPath(); - gfx.Text(actualLaneSpeed,Dim.design.width/4, th+100) - ]] gfx.BeginPath(); local tw, th = gfx.ImageSize(demopanel); @@ -73,10 +56,9 @@ local demoMode = function (songTitle,songArtist) gfx.LoadSkinFont('Digital-Serial-Bold.ttf') renderOutlinedText(desw/4+12,th+90, "DEMO MODE", 2); gfx.BeginPath(); --- gfx.FillColor(50,120,80,100) --- gfx.Rect((desw/4)+15, th+129, desw/2.12, th/2.25); + gfx.ImageRect((desw/4)+15,th+129,desw/2.12,th/2.25,jacketImage,1,0) --- gfx.Fill() + gfx.BeginPath(); gfx.TextAlign(gfx.TEXT_ALIGN_CENTER + gfx.TEXT_ALIGN_MIDDLE) renderOutlinedText(desw/2,th+685, songTitle, 2); diff --git a/scripts/gameplay/user_panel.lua b/scripts/gameplay/user_panel.lua index 1b8b997..b294ea8 100644 --- a/scripts/gameplay/user_panel.lua +++ b/scripts/gameplay/user_panel.lua @@ -1,5 +1,7 @@ local VolforceWindow = require('components.volforceWindow'); +local dancheck = require("components.dancheck"); +local volforceAmount = game.GetSkinSetting('_volforce'); local desw = 1080; local desh = 1920; @@ -74,7 +76,7 @@ local render = function (deltaTime, score, bestReplay) local scale = resy / desh gfx.Scale(scale, scale) - + if not gameplay.demoMode then gfx.BeginPath(); gfx.ImageRect( 0, @@ -113,7 +115,7 @@ local render = function (deltaTime, score, bestReplay) gfx.LoadSkinFont('Digital-Serial-Bold.ttf') gfx.TextAlign(gfx.TEXT_ALIGN_LEFT + gfx.TEXT_ALIGN_MIDDLE) gfx.FontSize(26) - gfx.Text(username, 150, y+152); + gfx.Text(string.upper(username), 150, y+152); -- Draw best score diff drawBestDiff(deltaTime, score, bestReplay, y); @@ -125,13 +127,68 @@ local render = function (deltaTime, score, bestReplay) y+206, 294*0.32, -- what are these whacky measurements 84*0.32, - danBadgeImage, + dancheck(false), 1, 0 ); - VolforceWindow.render(deltaTime, 220, y+197) + VolforceWindow.render(deltaTime, 220, y+197,42,true,volforceAmount) +else + gfx.BeginPath(); + gfx.ImageRect( + 0, + y, + 449*0.85, + 336*0.85, + idolFrameImage, + 1, + 0 + ); + gfx.BeginPath(); + gfx.ImageRect( + 0, + y, + 449*0.85, + 336*0.85, + bgImage, + 1, + 0 + ); + + -- Draw appeal card + gfx.BeginPath(); + gfx.ImageRect( + 10, + y+117, + 150*0.62, + 192*0.62, + appealCardImage, + 1, + 0 + ); + + -- Draw username + gfx.LoadSkinFont('Digital-Serial-Bold.ttf') + gfx.TextAlign(gfx.TEXT_ALIGN_LEFT + gfx.TEXT_ALIGN_MIDDLE) + gfx.FontSize(26) + gfx.Text(string.upper("Guest"), 150, y+152); + + -- Draw dan badge & volforce + gfx.BeginPath(); + gfx.ImageRect( + 117, + y+206, + 294*0.32, -- what are these whacky measurements + 84*0.32, + dancheck(true), + 1, + 0 + ); + + VolforceWindow.render(deltaTime, 220, y+197,42,true,0) + + end gfx.ResetTransform() end diff --git a/scripts/multi/inRoom/songjacket.lua b/scripts/multi/inRoom/songjacket.lua index fefa4a0..b40f0cc 100644 --- a/scripts/multi/inRoom/songjacket.lua +++ b/scripts/multi/inRoom/songjacket.lua @@ -7,6 +7,17 @@ local placeholderJacket = gfx.CreateSkinImage("song_select/loading.png", 0) local songjacket = function() + if selected_song == nil then + if jacket == 0 then + jacket = placeholderJacket + end + else + if selected_song.jacket == nil or selected_song.jacket == placeholderJacket then + selected_song.jacket = gfx.LoadImageJob(selected_song.jacketPath, placeholderJacket) + jacket = selected_song.jacket + end + end + local jw , jh = gfx.ImageSize(m_jacket); gfx.BeginPath(); gfx.ImageRect(jacketPanelX, jacketPanelY, jw/1.18, jh/1.18, m_jacket,1,0); @@ -21,17 +32,6 @@ local songjacket = function() end end - if selected_song == nil then - if jacket == 0 then - jacket = placeholderJacket - end - else - if selected_song.jacket == nil or selected_song.jacket == placeholderJacket then - selected_song.jacket = gfx.LoadImageJob(selected_song.jacketPath, placeholderJacket) - jacket = selected_song.jacket - end - end - end return songjacket \ No newline at end of file diff --git a/scripts/multi/roomList/droom.lua b/scripts/multi/roomList/droom.lua new file mode 100644 index 0000000..a438a7d --- /dev/null +++ b/scripts/multi/roomList/droom.lua @@ -0,0 +1,48 @@ +local l_panel = gfx.CreateSkinImage("multi/roomselect/room_panel.png",1); + +local l_pw = gfx.CreateSkinImage("multi/roomselect/pw_or_price_panel.png",1); + +local n_panel_ja = gfx.CreateSkinImage("multi/roomselect/nautica/nautica_bg_jacket.png",1); + +local info_panel = gfx.CreateSkinImage("multi/roomselect/room_panel_name_or_song.png",1); + +local placeholderJacket = gfx.CreateSkinImage("song_select/loading.png", 0) + +local xnum = 230 +local ynum = 40 + +local draw_room = function(name, x, y,status, selected, hoverindex) + + jacket = placeholderJacket + + local jw,jh = gfx.ImageSize(l_panel); + gfx.BeginPath(); + gfx.ImageRect(x/4.5,y, jw, jh, l_panel,1,0); + + + local jw,jh = gfx.ImageSize(n_panel_ja); + gfx.BeginPath(); + gfx.ImageRect(x/4.5+3,y+5, jw, jh, n_panel_ja,1,0); + + gfx.BeginPath(); + gfx.ImageRect(x/4.5+10,y+22, jw/1.15,jh/1.25, jacket,1,0); + + local jw,jh = gfx.ImageSize(info_panel); + gfx.BeginPath(); + gfx.ImageRect(x/2-5,y+5, jw, jh, info_panel,1,0); + + gfx.BeginPath(); + gfx.TextAlign(gfx.TEXT_ALIGN_LEFT + gfx.TEXT_ALIGN_MIDDLE); + gfx.FontSize(35); + gfx.Text(name, x-xnum,y+ynum); + gfx.Text(stats[1], x-xnum,y+ynum+40); + + gfx.FontSize(24); + local jw,jh = gfx.ImageSize(l_pw); + gfx.BeginPath(); + gfx.ImageRect(x+xnum-5,y+ynum+29, jw, jh, l_pw,1,0); + gfx.Text(stats[2].." / "..stats[4], x+xnum+2.5,y+ynum+52.5); + +end; + +return draw_room \ No newline at end of file diff --git a/scripts/multi/roomList/getgrad.lua b/scripts/multi/roomList/getgrad.lua index 17248e9..49cf4aa 100644 --- a/scripts/multi/roomList/getgrad.lua +++ b/scripts/multi/roomList/getgrad.lua @@ -1,13 +1,12 @@ - lobbypanelX = 0; - lobbypanelY = (1080/2.5)-56; + local l_grad = gfx.CreateSkinImage("multi/roomselect/lobby_select_gradiant.png", 1); -local getgrad = function() +local getgrad = function(x,y) gfx.Save() local jw,jh = gfx.ImageSize(l_grad); gfx.BeginPath(); - gfx.ImageRect(lobbypanelX+116.7, lobbypanelY-160, jw/1.78, jh/1.8, l_grad,1,0); + gfx.ImageRect(x/x, y/y+376, jw, jh, l_grad,1,0); gfx.Restore() end diff --git a/scripts/multi/roomList/getpanel.lua b/scripts/multi/roomList/getpanel.lua index ce1e629..9b3fc7b 100644 --- a/scripts/multi/roomList/getpanel.lua +++ b/scripts/multi/roomList/getpanel.lua @@ -2,41 +2,20 @@ local Dim = require("common.dimensions") local desw,desh = Dim.design.width,Dim.design.height - lobbypanelX = 0; - lobbypanelY = (1080/2.5)-56; -local l_color = gfx.CreateSkinImage("multi/roomselect/lobby_select_color.png", 1); -local l_load = gfx.CreateSkinImage("multi/roomselect/lobby_not_loaded.png",1) + lobbypanelY = 376; + +local l_color = gfx.CreateSkinImage("multi/roomselect/lobby_select_color.png", 1); +local l_load = gfx.CreateSkinImage("multi/roomselect/lobby_not_loaded.png",1) local n_play_dot = gfx.CreateSkinImage("multi/roomselect/nautica/nautica_pl_dot.png",1); - -local station = "" - local getpanel = function() if screenState == "roomList" then --multi - station = "Multi Station" local jw,jh = gfx.ImageSize(l_color); --- gfx.BeginPath(); --- gfx.ImageRect(lobbypanelX, lobbypanelY, jw, jh, l_base_panel,1,0); - gfx.BeginPath(); - gfx.ImageRect(lobbypanelX, lobbypanelY, jw/1.17, jh*1.18, l_color,1,0); - - --- gfx.BeginPath(); --- gfx.ImageRect(lobbypanelX, lobbypanelY, jw, jh, l_grad,1,0); gfx.BeginPath(); - gfx.FontSize(36) - gfx.TextAlign(gfx.TEXT_ALIGN_CENTER, gfx.TEXT_ALIGN_CENTER) - gfx.LoadSkinFont("Digital-Serial-Bold.ttf"); - gfx.FillColor(243,217,175,255) - gfx.Fill() - gfx.Text(string.upper(station),lobbypanelX+1080/2,lobbypanelY+39) - gfx.FillColor(255,255,255,50) - gfx.Text(string.upper(station),lobbypanelX+1080/2,lobbypanelY+39) - gfx.Fill() - + gfx.ImageRect(desw/desw, lobbypanelY, jw, jh, l_color,1,0); if not loading then gfx.BeginPath() diff --git a/scripts/multi/roomList/getroom.lua b/scripts/multi/roomList/getroom.lua index 900be63..355f178 100644 --- a/scripts/multi/roomList/getroom.lua +++ b/scripts/multi/roomList/getroom.lua @@ -19,10 +19,6 @@ local ynum = 24 local getroom = function(song,x,y,downloaded) --multiplayer room list if screenState == "roomList" then --- local jw,jh = gfx.ImageSize(l_panel); --- gfx.BeginPath(); --- gfx.ImageRect(lobbypanelX, lobbypanelY, jw, jh, l_panel,1,0); - -- do the lobby oder here draw_rooms(desw/2, desh - 290); end diff --git a/scripts/multi/roomList/gettop.lua b/scripts/multi/roomList/gettop.lua index afe9e7b..6e33fb5 100644 --- a/scripts/multi/roomList/gettop.lua +++ b/scripts/multi/roomList/gettop.lua @@ -4,23 +4,23 @@ local l_base_panel = gfx.CreateSkinImage("multi/roomselect/lobby_select.png",1); -local gettop = function() +local gettop = function(x,y) station = "Nautica Station" local jw,jh = gfx.ImageSize(l_base_panel); gfx.BeginPath(); gfx.SetImageTint(255,255,255,50) - gfx.ImageRect(lobbypanelX+116.7, lobbypanelY-160, jw/1.78, jh/1.8, l_base_panel,1,0); + gfx.ImageRect(x/x, y/y+376, jw, jh, l_base_panel,1,0); gfx.BeginPath(); - gfx.FontSize(22) + gfx.FontSize(40) gfx.TextAlign(gfx.TEXT_ALIGN_CENTER, gfx.TEXT_ALIGN_CENTER) gfx.LoadSkinFont("Digital-Serial-Bold.ttf"); gfx.FillColor(243,217,175,255) gfx.Fill() - gfx.Text(string.upper(station),(lobbypanelX+1080/2)-120,lobbypanelY+35-175.5) + gfx.Text(string.upper(station),x/2, y/2-546) gfx.FillColor(255,255,255,50) - gfx.Text(string.upper(station),(lobbypanelX+1080/2)-120,lobbypanelY+35-175.5) + gfx.Text(string.upper(station),x/2, y/2-546) gfx.Fill() end diff --git a/scripts/multiplayerscreen.lua b/scripts/multiplayerscreen.lua index f0b122b..8e604a0 100644 --- a/scripts/multiplayerscreen.lua +++ b/scripts/multiplayerscreen.lua @@ -20,6 +20,10 @@ local m_info_part = require("multi.inRoom.infopanel") -- roomList components local getpanel = require("multi.roomList.getpanel") +local getroom = require("multi.roomList.getroom") +local draw_room = require("multi.roomList.droom") +local l_grad = gfx.CreateSkinImage("multi/roomselect/lobby_select_gradiant.png", 1); +local l_base_panel = gfx.CreateSkinImage("multi/roomselect/lobby_select.png",1); local headerMatchingImage = gfx.CreateSkinImage("titlescreen/entry.png", 1); @@ -180,38 +184,6 @@ mouse_clipped = function(x,y,w,h) return mposx > x and mposy > y and mposx < x+w and mposy < y+h; end; --- look into this when people are online -draw_room = function(name, x, y, selected, hoverindex) - local buttonWidth = desw*(3/4); - local rx = x - (buttonWidth / 2); - local ty = y - (buttonHeight / 2); - local roomButtonBorder = buttonBorder; - gfx.BeginPath(); - gfx.FillColor(0,128,255); - if selected then - gfx.FillColor(0,255,0); - roomButtonBorder = 4; - end - if mouse_clipped(rx,ty, buttonWidth, buttonHeight) then - hovered = hoverindex; - gfx.FillColor(255,128,0); - end - gfx.Rect(rx - roomButtonBorder, - ty - roomButtonBorder, - buttonWidth + (roomButtonBorder * 2), - buttonHeight + (roomButtonBorder * 2)); - gfx.Fill(); - gfx.BeginPath(); - gfx.FillColor(40,40,40); - gfx.Rect(rx, ty, buttonWidth, buttonHeight); - gfx.Fill(); - gfx.BeginPath(); - gfx.FillColor(255,255,255); - gfx.TextAlign(gfx.TEXT_ALIGN_CENTER + gfx.TEXT_ALIGN_MIDDLE); - gfx.FontSize(40); - gfx.Text(name, x, y); -end; - custom_button = function (name,x,y,image,font,fSize,hoverindex) local jw,jh = gfx.ImageSize(image); gfx.BeginPath(); @@ -436,13 +408,25 @@ function draw_rooms(y, h) local offsetY = (offset_index + ioffset) * (buttonHeight + 10); local ypos = y + (h/2) - offsetY; local status = room.current..'/'..room.max + if room.current == room.max then + statusST = status + statusF = " " + else + statusST = status + statusF = " " + end if room.ingame then - status = status..' (IN MATCH)' + statusM = ' ' end if room.password then - status = status..'

' + statusPW = ' ' + else + statusPW = ' ' end - draw_room(room.name .. ': '.. status, desw/2, ypos, i == selected_room_index, function() + stats ={statusST,statusF,statusM,statusPW} + + + draw_room(room.name, desw/2, ypos,stats, i == selected_room_index, function() join_room(room) end) end @@ -513,8 +497,30 @@ end function render_room_list(deltaTime) Background.draw(deltaTime) - drawHeader() getpanel() + station = "Multi Station" + local jw,jh = gfx.ImageSize(l_grad); + +-- the list + getroom() +-- + + gfx.BeginPath(); + gfx.ImageRect(desw/desw, lobbypanelY, jw, jh, l_grad,1,0); + + gfx.BeginPath(); + gfx.ImageRect(desw/desw, lobbypanelY, jw, jh, l_base_panel,1,0); + + gfx.BeginPath(); + gfx.FontSize(40) + gfx.TextAlign(gfx.TEXT_ALIGN_CENTER, gfx.TEXT_ALIGN_CENTER) + gfx.LoadSkinFont("Digital-Serial-Bold.ttf"); + gfx.FillColor(243,217,175,255) + gfx.Fill() + gfx.Text(string.upper(station),desw/2, desh/2-546) + gfx.FillColor(255,255,255,50) + gfx.Text(string.upper(station),desw/2, desh/2-546) + gfx.Fill() end diff --git a/scripts/result.lua b/scripts/result.lua index 298fbbd..7e2dbff 100644 --- a/scripts/result.lua +++ b/scripts/result.lua @@ -5,6 +5,8 @@ local Footer = require('components.footer'); local Numbers = require('components.numbers') local DiffRectangle = require('components.diff_rectangle'); local lang = require("language.call") +local dancheck = require("components.dancheck"); +local volforceAmount = game.GetSkinSetting('_volforce'); local crew = game.GetSkinSetting("single_idol") local betacrew = game.GetSkinSetting("beta_idol") @@ -633,15 +635,15 @@ local drawBottomPanelContent = function(deltatime) -- Draw username gfx.FontSize(28) - gfx.Text(username, bottomPanelX + 190, bottomPanelY + 314); + gfx.Text(string.upper(username), bottomPanelX + 190, bottomPanelY + 314); -- Draw dan badge gfx.BeginPath(); gfx.ImageRect(bottomPanelX + 187, bottomPanelY + 362, 107, 29, - danBadgeImage, 1, 0); + dancheck(false), 1, 0); -- Draw volforce - VolforceWindow.render(0, bottomPanelX + 310, bottomPanelY + 355) + VolforceWindow.render(0, bottomPanelX + 310, bottomPanelY + 355,42,true,volforceAmount) -- Draw IR text gfx.FontSize(22) diff --git a/scripts/songselect/songwheel.lua b/scripts/songselect/songwheel.lua index e6b8e6c..9a79557 100644 --- a/scripts/songselect/songwheel.lua +++ b/scripts/songselect/songwheel.lua @@ -1,13 +1,18 @@ -local Charting = require('common.charting') -local Easing = require('common.easing') -local Background = require('components.background') +local Charting = require("common.charting") +local Easing = require("common.easing") +local Background = require("components.background") local Dim = require("common.dimensions") local Wallpaper = require("components.wallpaper") -local common = require('common.util') +local common = require("common.util") local Sound = require("common.sound") -local Numbers = require('components.numbers') +local Numbers = require("components.numbers") +local username = game.GetSkinSetting("username") -local VolforceCalc = require('components.volforceCalc') +local VolforceCalc = require("components.volforceCalc") +local VfWindow = require("components.volforceWindow") +local volforceAmount = game.GetSkinSetting('_volforce'); + +-- add things if EventMode is more explained local dataPanelImage = gfx.CreateSkinImage("song_select/data_bg_overlay.png", 1) local dataGlowOverlayImage = gfx.CreateSkinImage("song_select/data_panel/data_glow_overlay.png", 1) @@ -40,7 +45,6 @@ local searchInfoPanelImage = gfx.CreateSkinImage("song_select/search_info_panel. local defaultJacketImage = gfx.CreateSkinImage("song_select/loading.png", 0) - local difficultyLabelImages = { gfx.CreateSkinImage("song_select/plate/difficulty_labels/novice.png", 1), gfx.CreateSkinImage("song_select/plate/difficulty_labels/advanced.png", 1), @@ -375,6 +379,7 @@ function drawSong(song, y) if (top50diffs[selectedSongDifficulty.id]) then gfx.BeginPath() gfx.ImageRect(songX+82, y+109, 506*0.85, 26*0.85, top50OverlayImage, 1, 0) + VfWindow.render(0,songX+95, y+105,24*1.5,false,volforceAmount) end end @@ -422,6 +427,7 @@ function drawData() -- Draws the song data on the left panel if (top50diffs[diff.id]) then gfx.BeginPath() gfx.ImageRect(96, 529, 410*0.85, 168*0.85, top50JacketOverlayImage, 1, 0) + VfWindow.render(0,85, 600,24*3,false,volforceAmount) end gfx.Save() @@ -565,8 +571,7 @@ function drawLocalLeaderboard(diff) gfx.TextAlign(gfx.TEXT_ALIGN_LEFT + gfx.TEXT_ALIGN_MIDDLE) gfx.BeginPath() - gfx.Text(game.GetSkinSetting("username"), sbBarContentLeftX, scoreBoardY + sbBarHeight/2 + i*sbBarHeight) - + gfx.Text(string.upper(username), sbBarContentLeftX, scoreBoardY + sbBarHeight/2 + i*sbBarHeight) gfx.BeginPath() gfx.Text((diff.scores[i]) and diff.scores[i].score or "- - - - - - - -", sbBarContentRightX, scoreBoardY + sbBarHeight/2 + i*sbBarHeight) end @@ -638,7 +643,6 @@ function drawIrLeaderboard() gfx.TextAlign(gfx.TEXT_ALIGN_LEFT + gfx.TEXT_ALIGN_MIDDLE) gfx.BeginPath() gfx.Text(string.upper(irScore.username), sbBarContentLeftX, scoreBoardY + sbBarHeight/2 + rank*sbBarHeight) - gfx.BeginPath() gfx.Text(string.format("%d", irScore.score), sbBarContentRightX, scoreBoardY + sbBarHeight/2 + rank*sbBarHeight) @@ -832,10 +836,7 @@ function refreshIrLeaderboard(deltaTime) end irRequestStatus = 2 -- Loading - -- onIrLeaderboardFetched({ - -- statusCode = 20, - -- body = {} - -- }) + IR.Leaderboard(diff.hash, 'best', 4, onIrLeaderboardFetched) end diff --git a/textures/dan/1.png b/textures/dan/1.png deleted file mode 100644 index 4030e43..0000000 Binary files a/textures/dan/1.png and /dev/null differ diff --git a/textures/dan/10.png b/textures/dan/10.png deleted file mode 100644 index 4da0f8c..0000000 Binary files a/textures/dan/10.png and /dev/null differ diff --git a/textures/dan/11.png b/textures/dan/11.png deleted file mode 100644 index cf20a49..0000000 Binary files a/textures/dan/11.png and /dev/null differ diff --git a/textures/dan/2.png b/textures/dan/2.png deleted file mode 100644 index 6037949..0000000 Binary files a/textures/dan/2.png and /dev/null differ diff --git a/textures/dan/3.png b/textures/dan/3.png deleted file mode 100644 index 7bd2c96..0000000 Binary files a/textures/dan/3.png and /dev/null differ diff --git a/textures/dan/4.png b/textures/dan/4.png deleted file mode 100644 index 6a1a1a1..0000000 Binary files a/textures/dan/4.png and /dev/null differ diff --git a/textures/dan/5.png b/textures/dan/5.png deleted file mode 100644 index 8d8be94..0000000 Binary files a/textures/dan/5.png and /dev/null differ diff --git a/textures/dan/6.png b/textures/dan/6.png deleted file mode 100644 index bb16025..0000000 Binary files a/textures/dan/6.png and /dev/null differ diff --git a/textures/dan/7.png b/textures/dan/7.png deleted file mode 100644 index 4cdfbff..0000000 Binary files a/textures/dan/7.png and /dev/null differ diff --git a/textures/dan/8.png b/textures/dan/8.png deleted file mode 100644 index 060a18a..0000000 Binary files a/textures/dan/8.png and /dev/null differ diff --git a/textures/dan/9.png b/textures/dan/9.png deleted file mode 100644 index 03d56dd..0000000 Binary files a/textures/dan/9.png and /dev/null differ diff --git a/textures/dan/inf.png b/textures/dan/inf.png deleted file mode 100644 index c24474b..0000000 Binary files a/textures/dan/inf.png and /dev/null differ diff --git a/textures/volforce/10.png b/textures/volforce/10.png index 415d98e..3d7b0d9 100644 Binary files a/textures/volforce/10.png and b/textures/volforce/10.png differ diff --git a/textures/volforce/11.png b/textures/volforce/11.png new file mode 100644 index 0000000..51e7158 Binary files /dev/null and b/textures/volforce/11.png differ diff --git a/textures/volforce/7.png b/textures/volforce/7.png index bd66ec7..3d53c49 100644 Binary files a/textures/volforce/7.png and b/textures/volforce/7.png differ diff --git a/textures/volforce/8.png b/textures/volforce/8.png index 83c906b..15361a3 100644 Binary files a/textures/volforce/8.png and b/textures/volforce/8.png differ diff --git a/textures/volforce/9.png b/textures/volforce/9.png index 15fb364..862e6f8 100644 Binary files a/textures/volforce/9.png and b/textures/volforce/9.png differ diff --git a/textures/volforce/stars/1.png b/textures/volforce/stars/1.png new file mode 100644 index 0000000..21abd03 Binary files /dev/null and b/textures/volforce/stars/1.png differ diff --git a/textures/volforce/stars/2.png b/textures/volforce/stars/2.png new file mode 100644 index 0000000..98ec20e Binary files /dev/null and b/textures/volforce/stars/2.png differ