34d213d5f4d30f3ce40d22d37421e8a1c27e5c75
Introduce per-level glass inventory and UI for draggable glass pieces, including disabled state and count labels. glassOptions now hold objects with color, maxAmount and currentAmount; palette creation uses these values to enable/disable dragging, show remaining counts, and update on place/remove. Drag-and-drop logic now tracks a draggedGlassColor fallback, prevents placing when inventory is empty, decrements/increments inventory on place/remove, and rebuilds the palette. Reset inventory on level start and when advancing levels. Also adjust laser tracing: yellow lasers are saved as segments and terminate on target, and yellow interacts with demi-wall corners by saving the segment instead of reflecting (blue still reflects). Add CSS for .glass-item:disabled and .glass-item-label. Overall fixes inventory handling and yellow-laser behavior.
Règles :
-
Un rayon laser constant
-
Un ou plusieurs laser
-
Laser non movibles, peut-être allumé/éteins
-
Mirroirs orientables
-
Prisme (dédouble le laser ou le renvoi selon l'angle)
-
Vitre colorée fixe ou placable par le joueur (r,j,b)
-
Bouton allumable par clique souris (interaction porte, mirroir, etc)
-
Bouton allumable par laser spécifique (interaction porte, mirroir, etc)
Rayon :
-
Blanc -> Rebondis seulement sur les mirroirs et s'arrête contre les murs
-
Rouge -> Allumage des récepteurs
-
Bleu -> Rebondis sur toutes les surfaces (murs compris)
-
Jaune -> Traverse tout (mirroir compris)
Systeme de placement d'objet par grille
Comptes utilisateur
Optionnel : timer, tableau de score,
Description
Languages
JavaScript
39.5%
HTML
39.2%
CSS
17.6%
Rust
3.7%