Skip to content

zepr/kts-game

Repository files navigation

Kill the Shadoks - Le jeu

Le principe

Dans ce jeu inspiré de la série The Incredible Machine, l'objectif est de construire une machine de Rube Goldberg afin d'éliminer tous les shadoks de la scène.

Historique

La version originale était le premier et le seul vrai jeu disponible sur killtheshadoks.com, site depuis longtemps disparu. C'était également ma première applet Java

Création de niveau

La définition des niveaux est externalisée dans des fichiers json (data/sceneXX.json), index à partir de 00. Ils sont chargés séquentiellement par le menu KtsMenuScreen. Le chargement s'arrête lorsqu'un niveau n'est pas disponible (Erreur 404 visible dans la console du navigateur)

La structure de niveau est définie dans le fichier ktsObjects.ts

/** Structure de fichier json */
export interface Scene {
    color: string;
    description: string;
    objects: Array<ObjectDefinition>;
    spare: Array<SpareObjectDefinition>;
}

export interface ObjectDefinition {
    type: string;
    x: number;
    y: number;
    rotation?: number;
    fixed?: boolean;
    active?: boolean;
    dependencies?: Array<ObjectDefinition>;
}

export interface SpareObjectDefinition {
    type: string;
    rotation?: number;
}

Les objets

Les objets sont décrits (et construits) dans la classe ObjectFactory

Objet Type Par défaut Actif Note
Shadok
Shadok
shadok masse=0 (fixe) masse=2 détruit par
les objets piquants
ou électriques
Mur
Mur
wall fixe -
Balançoire
Balançoire
swing fixe mouvement selon
axe (central)
Plot
Plot
pin fixe -
Masse d'arme
Masse d'arme
mace masse=10 supprime shadok, ballon
Pics
Pics
pikes fixe supprime shadok, ballon
Ballon de baudruche
Ballon de baudruche
balloon masse=-1 - détruit par
les objets piquants
Ballon
Ballon
ball masse=1 -
Sèche cheveux
Sèche cheveux
dryer fixe projette les
objets mobiles
Aspirateur
Aspirateur
vacuum fixe attire les
objets mobiles
Trappe
Trappe
trap fixe mouvement selon
axe
Tapis roulant (gauche)
Tapis roulant (gauche)
lrunner fixe déplacement des objets
vers la gauche
Tapis roulant (droite)
Tapis roulant (droite)
rrunner fixe déplacement des objets
vers la droite
Trampoline
Trampoline
trampo fixe fait rebondir
les objets
Plaque électrifiée
Plaque électrifiée
elec fixe supprime shadok
Bouton
button fixe Change l'état des
objets associés
Les objets sont définis
dans l'attribut
dependencies

Licence

Le jeu est construit sur le moteur physique p2.js de Stefan Hedman (Licence MIT) et le moteur de rendu zepr.ts (Licence LGPL)

Le jeu en lui-même est distribué sous licence GPLv3

Changelog

0.8.1 - 2019.04.20

  • Passage à zepr.ts@0.3.0
  • Ajout du mode "plein écran"

0.8.0 - 2019.04.01

  • Passage à un repository public

About

Kill the Shadoks - Le jeu

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published