Template:IB-Level: Difference between revisions

From Geometry Dash Expanded Wiki
Jump to navigation Jump to search
Render all level infobox parameters consistently in VisualEditor and normal views
Use supported div wrappers for the VisualEditor-compatible infobox
Line 1: Line 1:
<aside class="portable-infobox expanded-ve-infobox pi-background pi-border-color pi-theme-default">
<div class="portable-infobox expanded-ve-infobox pi-background pi-border-color pi-theme-default">
<h2 class="pi-item pi-item-spacing pi-title pi-secondary-background">{{{name|{{PAGENAME}}}}}</h2>
<h2 class="pi-item pi-item-spacing pi-title pi-secondary-background">{{{name|{{PAGENAME}}}}}</h2>
<figure class="pi-item pi-image">[[File:{{#replace:{{{image|Placeholder.png}}}|File:|}}|300px]]</figure>
<div class="pi-item pi-image">[[File:{{#replace:{{{image|Placeholder.png}}}|File:|}}|300px]]</div>
{{#if:{{{game|}}}{{{released|}}}{{{levelnumber|}}}{{{difficultymain|}}}|<section class="pi-item pi-group pi-border-color expanded-infobox-horizontal">
{{#if:{{{game|}}}{{{released|}}}{{{levelnumber|}}}{{{difficultymain|}}}|<div class="pi-item pi-group pi-border-color expanded-infobox-horizontal">
{{#if:{{{game|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="game"><h3 class="pi-data-label pi-secondary-font">Game</h3><div class="pi-data-value pi-font">{{{game|}}}</div></div>}}
{{#if:{{{game|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="game"><h3 class="pi-data-label pi-secondary-font">Game</h3><div class="pi-data-value pi-font">{{{game|}}}</div></div>}}
{{#if:{{{released|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="released"><h3 class="pi-data-label pi-secondary-font">Released</h3><div class="pi-data-value pi-font">{{{released|}}}</div></div>}}
{{#if:{{{released|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="released"><h3 class="pi-data-label pi-secondary-font">Released</h3><div class="pi-data-value pi-font">{{{released|}}}</div></div>}}
{{#if:{{{levelnumber|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="levelnumber"><h3 class="pi-data-label pi-secondary-font">Level</h3><div class="pi-data-value pi-font">{{{levelnumber|}}}</div></div>}}
{{#if:{{{levelnumber|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="levelnumber"><h3 class="pi-data-label pi-secondary-font">Level</h3><div class="pi-data-value pi-font">{{{levelnumber|}}}</div></div>}}
{{#if:{{{difficultymain|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="difficultymain"><h3 class="pi-data-label pi-secondary-font">Difficulty</h3><div class="pi-data-value pi-font">{{{difficultymain|}}}</div></div>}}
{{#if:{{{difficultymain|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="difficultymain"><h3 class="pi-data-label pi-secondary-font">Difficulty</h3><div class="pi-data-value pi-font">{{{difficultymain|}}}</div></div>}}
</section>}}
</div>}}
{{#if:{{{id|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="id"><h3 class="pi-data-label pi-secondary-font">ID</h3><div class="pi-data-value pi-font">{{{id|}}}</div></div>}}
{{#if:{{{id|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="id"><h3 class="pi-data-label pi-secondary-font">ID</h3><div class="pi-data-value pi-font">{{{id|}}}</div></div>}}
{{#if:{{{creator|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="creator"><h3 class="pi-data-label pi-secondary-font">Creator(s)</h3><div class="pi-data-value pi-font">{{{creator|}}}</div></div>}}
{{#if:{{{creator|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="creator"><h3 class="pi-data-label pi-secondary-font">Creator(s)</h3><div class="pi-data-value pi-font">{{{creator|}}}</div></div>}}
Line 13: Line 13:
{{#if:{{{created|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="created"><h3 class="pi-data-label pi-secondary-font">Created</h3><div class="pi-data-value pi-font">{{{created|}}}</div></div>}}
{{#if:{{{created|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="created"><h3 class="pi-data-label pi-secondary-font">Created</h3><div class="pi-data-value pi-font">{{{created|}}}</div></div>}}
{{#if:{{{updated|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="updated"><h3 class="pi-data-label pi-secondary-font">Last updated</h3><div class="pi-data-value pi-font">{{{updated|}}}</div></div>}}
{{#if:{{{updated|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="updated"><h3 class="pi-data-label pi-secondary-font">Last updated</h3><div class="pi-data-value pi-font">{{{updated|}}}</div></div>}}
{{#if:{{{difficulty|}}}{{{stars|}}}{{{moons|}}}{{{manaorbs|}}}{{{diamonds|}}}{{{coins|}}}{{{unvercoins|}}}{{{practicemode|}}}{{{normalmode|}}}|<section class="pi-item pi-group pi-border-color expanded-infobox-horizontal">
{{#if:{{{difficulty|}}}{{{stars|}}}{{{moons|}}}{{{manaorbs|}}}{{{diamonds|}}}{{{coins|}}}{{{unvercoins|}}}{{{practicemode|}}}{{{normalmode|}}}|<div class="pi-item pi-group pi-border-color expanded-infobox-horizontal">
<h2 class="pi-item pi-header pi-secondary-background">Attributes</h2>
<h2 class="pi-item pi-header pi-secondary-background">Attributes</h2>
{{#if:{{{difficulty|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="difficulty"><h3 class="pi-data-label pi-secondary-font">Difficulty</h3><div class="pi-data-value pi-font">{{{difficulty|}}}</div></div>}}
{{#if:{{{difficulty|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="difficulty"><h3 class="pi-data-label pi-secondary-font">Difficulty</h3><div class="pi-data-value pi-font">{{{difficulty|}}}</div></div>}}
Line 24: Line 24:
{{#if:{{{practicemode|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="practicemode"><h3 class="pi-data-label pi-secondary-font">[[Practice Mode|Practice mode]]</h3><div class="pi-data-value pi-font">{{{practicemode|}}}</div></div>}}
{{#if:{{{practicemode|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="practicemode"><h3 class="pi-data-label pi-secondary-font">[[Practice Mode|Practice mode]]</h3><div class="pi-data-value pi-font">{{{practicemode|}}}</div></div>}}
{{#if:{{{normalmode|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="normalmode"><h3 class="pi-data-label pi-secondary-font">[[Icon Kit|Normal mode]]</h3><div class="pi-data-value pi-font">{{{normalmode|}}}</div></div>}}
{{#if:{{{normalmode|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="normalmode"><h3 class="pi-data-label pi-secondary-font">[[Icon Kit|Normal mode]]</h3><div class="pi-data-value pi-font">{{{normalmode|}}}</div></div>}}
</section>}}
</div>}}
{{#if:{{{length|}}}{{{objects|}}}{{{copytype|}}}|<section class="pi-item pi-group pi-border-color expanded-infobox-horizontal">
{{#if:{{{length|}}}{{{objects|}}}{{{copytype|}}}|<div class="pi-item pi-group pi-border-color expanded-infobox-horizontal">
{{#if:{{{length|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="length"><h3 class="pi-data-label pi-secondary-font">Length</h3><div class="pi-data-value pi-font">{{{length|}}}</div></div>}}
{{#if:{{{length|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="length"><h3 class="pi-data-label pi-secondary-font">Length</h3><div class="pi-data-value pi-font">{{{length|}}}</div></div>}}
{{#if:{{{objects|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="objects"><h3 class="pi-data-label pi-secondary-font">Objects</h3><div class="pi-data-value pi-font">{{{objects|}}}</div></div>}}
{{#if:{{{objects|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="objects"><h3 class="pi-data-label pi-secondary-font">Objects</h3><div class="pi-data-value pi-font">{{{objects|}}}</div></div>}}
{{#if:{{{copytype|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="copytype"><h3 class="pi-data-label pi-secondary-font">Copy type</h3><div class="pi-data-value pi-font">{{{copytype|}}}</div></div>}}
{{#if:{{{copytype|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="copytype"><h3 class="pi-data-label pi-secondary-font">Copy type</h3><div class="pi-data-value pi-font">{{{copytype|}}}</div></div>}}
</section>}}
</div>}}
{{#if:{{{portals|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="portals"><h3 class="pi-data-label pi-secondary-font">[[Portals]]</h3><div class="pi-data-value pi-font">{{{portals|}}}</div></div>}}
{{#if:{{{portals|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="portals"><h3 class="pi-data-label pi-secondary-font">[[Portals]]</h3><div class="pi-data-value pi-font">{{{portals|}}}</div></div>}}
{{#if:{{{sequences|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="sequences"><h3 class="pi-data-label pi-secondary-font"><abbr title="The letter denotes form; its case denotes size; a doubled letter indicates dual mode; the number of commas or periods denotes speed; a preceding period indicates mirror mode; a pipe specifies a platformer checkpoint">Sequences</abbr></h3><div class="pi-data-value pi-font">{{{sequences|}}}</div></div>}}
{{#if:{{{sequences|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="sequences"><h3 class="pi-data-label pi-secondary-font"><abbr title="The letter denotes form; its case denotes size; a doubled letter indicates dual mode; the number of commas or periods denotes speed; a preceding period indicates mirror mode; a pipe specifies a platformer checkpoint">Sequences</abbr></h3><div class="pi-data-value pi-font">{{{sequences|}}}</div></div>}}
{{#if:{{{downloads|}}}{{{likes|}}}{{{rating|}}}|<section class="pi-item pi-group pi-border-color expanded-infobox-horizontal">
{{#if:{{{downloads|}}}{{{likes|}}}{{{rating|}}}|<div class="pi-item pi-group pi-border-color expanded-infobox-horizontal">
<h2 class="pi-item pi-header pi-secondary-background">Statistics</h2>
<h2 class="pi-item pi-header pi-secondary-background">Statistics</h2>
{{#if:{{{downloads|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="downloads"><h3 class="pi-data-label pi-secondary-font">Downloads</h3><div class="pi-data-value pi-font">{{{downloads|}}}</div></div>}}
{{#if:{{{downloads|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="downloads"><h3 class="pi-data-label pi-secondary-font">Downloads</h3><div class="pi-data-value pi-font">{{{downloads|}}}</div></div>}}
{{#if:{{{likes|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="likes"><h3 class="pi-data-label pi-secondary-font">Likes</h3><div class="pi-data-value pi-font">{{{likes|}}}</div></div>}}
{{#if:{{{likes|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="likes"><h3 class="pi-data-label pi-secondary-font">Likes</h3><div class="pi-data-value pi-font">{{{likes|}}}</div></div>}}
{{#if:{{{rating|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="rating"><h3 class="pi-data-label pi-secondary-font">Rating</h3><div class="pi-data-value pi-font">{{{rating|}}}</div></div>}}
{{#if:{{{rating|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="rating"><h3 class="pi-data-label pi-secondary-font">Rating</h3><div class="pi-data-value pi-font">{{{rating|}}}</div></div>}}
</section>}}
</div>}}
{{#if:{{{artist|}}}{{{music|}}}{{{musicid|}}}|<section class="pi-item pi-group pi-border-color">
{{#if:{{{artist|}}}{{{music|}}}{{{musicid|}}}|<div class="pi-item pi-group pi-border-color">
<h2 class="pi-item pi-header pi-secondary-background">Audio info</h2>
<h2 class="pi-item pi-header pi-secondary-background">Audio info</h2>
{{#if:{{{artist|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="artist"><h3 class="pi-data-label pi-secondary-font">Artist(s)</h3><div class="pi-data-value pi-font">{{{artist|}}}</div></div>}}
{{#if:{{{artist|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="artist"><h3 class="pi-data-label pi-secondary-font">Artist(s)</h3><div class="pi-data-value pi-font">{{{artist|}}}</div></div>}}
{{#if:{{{music|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="music"><h3 class="pi-data-label pi-secondary-font">Music</h3><div class="pi-data-value pi-font">{{{music|}}}</div></div>}}
{{#if:{{{music|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="music"><h3 class="pi-data-label pi-secondary-font">Music</h3><div class="pi-data-value pi-font">{{{music|}}}</div></div>}}
{{#if:{{{musicid|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="musicid"><h3 class="pi-data-label pi-secondary-font">Music ID</h3><div class="pi-data-value pi-font">{{{musicid|}}}</div></div>}}
{{#if:{{{musicid|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="musicid"><h3 class="pi-data-label pi-secondary-font">Music ID</h3><div class="pi-data-value pi-font">{{{musicid|}}}</div></div>}}
</section>}}
</div>}}
{{#if:{{{audio|}}}|<section class="pi-item pi-group pi-border-color expanded-infobox-horizontal">
{{#if:{{{audio|}}}|<div class="pi-item pi-group pi-border-color expanded-infobox-horizontal">
{{#if:{{{audio|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="audio"><h3 class="pi-data-label pi-secondary-font">Audio</h3><div class="pi-data-value pi-font">{{{audio|}}}</div></div>}}
{{#if:{{{audio|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="audio"><h3 class="pi-data-label pi-secondary-font">Audio</h3><div class="pi-data-value pi-font">{{{audio|}}}</div></div>}}
</section>}}
</div>}}
{{#if:{{{fullaudio|}}}|<section class="pi-item pi-group pi-border-color expanded-infobox-horizontal">
{{#if:{{{fullaudio|}}}|<div class="pi-item pi-group pi-border-color expanded-infobox-horizontal">
{{#if:{{{fullaudio|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="fullaudio"><h3 class="pi-data-label pi-secondary-font">Full audio</h3><div class="pi-data-value pi-font">{{{fullaudio|}}}</div></div>}}
{{#if:{{{fullaudio|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="fullaudio"><h3 class="pi-data-label pi-secondary-font">Full audio</h3><div class="pi-data-value pi-font">{{{fullaudio|}}}</div></div>}}
</section>}}
</div>}}
{{#if:{{{precededby|}}}{{{followedby|}}}{{{previous|}}}{{{next|}}}|<section class="pi-item pi-group pi-border-color expanded-infobox-horizontal">
{{#if:{{{precededby|}}}{{{followedby|}}}{{{previous|}}}{{{next|}}}|<div class="pi-item pi-group pi-border-color expanded-infobox-horizontal">
<h2 class="pi-item pi-header pi-secondary-background">Level sequence</h2>
<h2 class="pi-item pi-header pi-secondary-background">Level sequence</h2>
{{#if:{{{precededby|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="precededby"><h3 class="pi-data-label pi-secondary-font">Preceded by</h3><div class="pi-data-value pi-font">{{{precededby|}}}</div></div>}}
{{#if:{{{precededby|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="precededby"><h3 class="pi-data-label pi-secondary-font">Preceded by</h3><div class="pi-data-value pi-font">{{{precededby|}}}</div></div>}}
Line 56: Line 56:
{{#if:{{{previous|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="previous"><h3 class="pi-data-label pi-secondary-font">Previous</h3><div class="pi-data-value pi-font">{{{previous|}}}</div></div>}}
{{#if:{{{previous|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="previous"><h3 class="pi-data-label pi-secondary-font">Previous</h3><div class="pi-data-value pi-font">{{{previous|}}}</div></div>}}
{{#if:{{{next|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="next"><h3 class="pi-data-label pi-secondary-font">Next</h3><div class="pi-data-value pi-font">{{{next|}}}</div></div>}}
{{#if:{{{next|}}}|<div class="pi-item pi-data pi-item-spacing pi-border-color" data-source="next"><h3 class="pi-data-label pi-secondary-font">Next</h3><div class="pi-data-value pi-font">{{{next|}}}</div></div>}}
</section>}}
</div>}}
</aside><noinclude>
</div><noinclude>
;Description
;Description
:This template is an infobox which provides information about a level at a glance.
:This template is an infobox which provides information about a level at a glance.

Revision as of 01:31, 11 October 2026

Description
This template is an infobox which provides information about a level at a glance.
Contextually, not all fields should be used at once, particularly those to do with level attributes, where only four (of difficulty, stars, moons, manaorbs, diamonds, coins, unvercoins, practicemode, normalmode) can properly display at one time. Refer to the syntax below for recommended usage between user levels and main levels.
Syntax
{{IB-Level
 |name           = (automatic)
 |image          = (required) [specify .png image only]
 |game           = [main level]
 |released       = [main level]
 |levelnumber    = [main level]
 |difficultymain = [main level] [specify image at x35px]
 |id             = [user level]
 |creator        = [user level]
 |verifier       = [user level]
 |created        = [user level]
 |updated        = [user level]
 |difficulty     = [user level] [specify image at x35px]
 |stars          = [classic level if applicable]
 |moons          = [platformer level if applicable]
 |manaorbs       = [main level (user level - unspecified, assumed under calculation)]
 |diamonds       = [user level if applicable]
 |coins          = [user level if applicable]
 |unvercoins     = [user level if applicable]
 |practicemode   = [main level if applicable] [specify image at x35px]
 |normalmode     = [main level] [specify image at x35px]
 |length         = [user level]
 |objects        = [user level]
 |copytype       = [user level]
 |portals        = [main level]
 |sequences      = [main level]
 |downloads      = [user level]
 |likes          = [user level]
 |rating         = [user level]
 |artist         =
 |music          =
 |musicid        =
 |audio          =
 |fullaudio      =
 |precededby     = [main level]
 |followedby     = [main level]
 |previous       = [user level]
 |next           = [user level]
}}
Sample & output

Spike Spike

[[File:|300px]]

ID

130

Creator(s)

RobTop

Created

Update 1.9

Last updated

Update 2.1

Attributes

Difficulty



Length

20s (Short)

Objects

?

Copy type

Password (789123)


Statistics

Downloads

350,000+

Likes

100,000+

Rating

Featured

Audio info

Artist(s)

DJVI

Music

Base After Base


Level sequence


Previous

Block Block

Next

Saw Saw

Bounce ball thingy

Game

Geometry Stroll

Released

Update 6.9

Level

42

Difficulty



Portals

Cube, Ship, Ball, UFO, Wave, Robot, Spider, Swing; Gravity, Mirror, Size, Speed, Dual, Teleportation

Sequences

C, .S, b, U,, W,,, R,,,, Sp. SwSw,

Audio info

Artist(s)


Audio

Full audio

Level sequence

Preceded by

RubRub Origins

Followed by

RubRub Legacy


{{IB-Level
 |name           = Spike Spike
 |image          =
 |game           =
 |released       =
 |levelnumber    =
 |difficultymain =
 |id             = 130
 |creator        = RobTop
 |verifier       =
 |created        = Update 1.9
 |updated        = Update 2.1
 |difficulty     = [[File:Harder.png|x35px]]
 |stars          = 6
 |moons          =
 |manaorbs       =
 |diamonds       = 8
 |coins          = 3
 |unvercoins     =
 |practicemode   =
 |normalmode     =
 |length         = 20s (Short)
 |objects        = ?
 |copytype       = Password (789123)
 |portals        = 
 |sequences      = 
 |downloads      = 350,000+
 |likes          = 100,000+
 |rating         = Featured
 |artist         = DJVI
 |music          = Base After Base
 |musicid        =
 |audio          =
 |fullaudio      =
 |precededby     =
 |followedby     =
 |previous       = Block Block
 |next           = Saw Saw
}}
{{IB-Level
 |name           = Bounce ball thingy
 |image          = RobertTopala.png
 |game           = Geometry Stroll
 |released       = Update 6.9
 |levelnumber    = 42
 |difficultymain = [[File:Auto.png|x35px]]
 |id             =
 |creator        =
 |verifier       =
 |created        =
 |updated        =
 |difficulty     =
 |stars          = 420
 |moons          =
 |manaorbs       = 9001
 |diamonds       =
 |coins          =
 |unvercoins     =
 |practicemode   = [[File:Cube004.png|x35px]]
 |normalmode     = [[File:Cube062.png|x35px]]
 |length         =
 |objects        =
 |copytype       =
 |portals        = Cube, Ship, Ball, UFO, Wave, Robot, Spider, Swing; Gravity, Mirror, Size, Speed, Dual, Teleportation
 |sequences      = C, .S, b, U,, W,,, R,,,, Sp. SwSw,
 |downloads      =
 |likes          =
 |rating         =
 |artist         = [https://zhenmuron.newgrounds.com Zhenmuron]
 |music          =
 |musicid        =
 |audio          = [[File:GeometryDashMenuTheme.mp3]]
 |fullaudio      = [[File:RandomSong06.mp3]]
 |precededby     = RubRub Origins
 |followedby     = RubRub Legacy
 |previous       =
 |next           =
}}