11import styles from './index.module.css' ;
2+ import useBaseUrl from '@docusaurus/useBaseUrl' ;
23
34const features = [
45 {
5- title : "Asset Injection" ,
6- description : "Replace in-game assets like textures, sounds, shaders, and more with a simple drag and drop." ,
7- } ,
8- {
9- title : "Custom Events" ,
10- description : "Code your own events and notes into the game and use them in your levels." ,
6+ title : "Easy Mod Installation" ,
7+ description : "Install mods with just a drag and drop." ,
8+ image : "drag-and-drop.png"
119 } ,
1210 {
1311 title : "Mod Menu" ,
14- description : "Toggle and configure your mods with the Beatblock Plus in-game mod menu." ,
12+ description : "Toggle and configure your mods with the BeatblockPlus in-game mod menu." ,
13+ image : "mod-menu.png"
1514 } ,
1615 {
17- title : "Custom Languages" ,
18- description : "Easily create translations for the game with a single file." ,
16+ title : "Enhanced Gameplay" ,
17+ description : "Modify the game's code, textures, sounds and more!" ,
18+ image : "gameplay.png"
1919 } ,
2020 {
21- title : "Debug Console" ,
22- description : "Use the debug console for quickly debugging your code." ,
23- } ,
21+ title : "Community Creations" ,
22+ description : "Access a growing collection of mods and content created by the community." ,
23+ image : "community.png"
24+ }
2425]
2526
2627export default function Features ( ) {
@@ -29,18 +30,29 @@ export default function Features() {
2930 < h1 className = { [ 'center' , styles . tagline ] . join ( ' ' ) } > The complete toolkit for Beatblock mod development</ h1 >
3031 < div className = { styles . features } >
3132 { features . map ( ( props , idx ) => (
32- < Feature key = { idx } { ...props } />
33+ < Feature key = { idx } index = { idx } { ...props } />
3334 ) ) }
3435 </ div >
3536 </ section >
3637 ) ;
3738}
3839
39- function Feature ( { title, description } ) {
40+ function Feature ( { title, description, image, index } ) {
41+ const isEven = index % 2 === 0 ;
42+ const featureClass = [ styles . feature , isEven ? styles . normalRow : styles . reversedRow ] . join ( ' ' ) ;
43+
4044 return (
41- < div className = { styles . feature } >
42- < p className = { styles . title } > { title } </ p >
43- < p className = { styles . description } > { description } </ p >
45+ < div className = { featureClass } >
46+ { /* Image Box Container */ }
47+ < div className = { styles . visualBox } >
48+ < img src = { useBaseUrl ( `/img/features/${ image } ` ) } alt = { title } className = { styles . boxImage } />
49+ </ div >
50+
51+ { /* Text Content */ }
52+ < div className = { styles . textContent } >
53+ < p className = { styles . title } > { title } </ p >
54+ < p className = { styles . description } > { description } </ p >
55+ </ div >
4456 </ div >
45- )
46- }
57+ ) ;
58+ }
0 commit comments