Constructor
new Entity(spriteopt, audioopt, xopt, yopt)
Erstellt eine Entität
Parameters:
Name | Type | Attributes | Default | Description |
---|---|---|---|---|
sprite |
string |
<optional> |
'' | URL zu dem Spritesheet der Entität |
audio |
string |
<optional> |
[] | Liste von URLs zu den Audioeffekten |
x |
number |
<optional> |
0 | X-Position der Entität |
y |
number |
<optional> |
0 | Y-Position der Entität |
Properties:
Name | Type | Description |
---|---|---|
sprite |
Image | Der momentane Sprite des Entity |
audio |
Image | Die momentan spielende Audiodatei |
state |
string | Der Status der Entität |
- Source:
Classes
Members
audio
Gibt die gerade spielenden Audiodatei wieder dies muss für jeden Entity einzeln festgelegt werden
- Source:
collides
Gibt an, ob die Entität mit irgendetwas kollidiert
- Source:
- See:
collidesBottom
Gibt an, ob die Entität unten mit Etwas Kollidiert
- Source:
collidesLeft
Gibt an, ob die Entität links mit Etwas Kollidiert
- Source:
collidesRight
Gibt an, ob die Entität rechts mit Etwas Kollidiert
- Source:
collidesTop
Gibt an, ob die Entität oben mit Etwas Kollidiert
- Source:
corners
Speichere alle Ecken einer Entität. Also die Punkte an denen der Sprite anfängt/aufhört, wenn man den Sprite als ein Rechteck betrachtet
- Source:
- See:
fallingDownLeftSlope
Gibt an, ob die Entität irgendwo links runterläuft
- Source:
fallingDownRightSlope
Gibt an, ob die Entität irgendwo rechts runterläuft
- Source:
fallingOnFloor
true, wenn Entiät fällt und mit dem unteren Teil gegen etwas kollidiert
- Source:
height
Gibt die Höhe der Entität (also des gerade angezeigten Sprites) an
- Source:
- See:
jumpingAgainstCeiling
true, wenn Entität nach oben steigt und mit dem oberen Teil gegen etwas kollidiert
- Source:
loaded
Gibt an, ob alle Daten für die Entität geladen wurden. Erst dann kann die Entität auch von der Kamera gezeichnet werden
- Source:
sprite
gibt den gerade spielenden Sprite wieder dies muss für jeden Entity einzeln festgelegt werden
- Source:
vx
gibt die X-Geschwindigkeit der Entität an
- Source:
vx
Setzt die X-Geschwindigkeit der Entität
- Source:
vy
gibt die Y-Geschwindigkeit der Entität an
- Source:
vy
Setzt die Y-Geschwindigkeit der Entität
- Source:
walkingIntoLeftWall
Gibt an, ob Entität gegen eine linke Wand läuft
- Source:
walkingIntoRightWall
Gibt an, ob Entität gegen eine rechte Wand läuft
- Source:
walkingUpLeftSlope
Gibt an, ob die Entität irgendwo links hochläft
- Source:
walkingUpRightSlope
Gibt an, ob die Entität irgendwo rechts hochläft
- Source:
width
Gibt die Breite der Entität (also des gerade angezeigten Sprites) an
- Source:
- See:
x
Gibt die X-Position der Entität an
- Source:
x
Setzt die X-Position der Entität
- Source:
y
Gibt die Y-Position der Entität an
- Source:
y
Setzt die Y-Position der Entität
- Source:
Methods
computeAudioatlas()
Berechnet den Audioatlas aus dem Audiosheet. Der Audiosheet ist der Parameter "audio" des Generators dieses Objektes. Mittels dieser Methode wird jedem State ein Array aus Audiodateien zugeordnet, welche mittels der URLs vom Audioarray geladen werden. Diese URLs werden hier in Audiodateien Umgewandelt und in this.audioatlas gespeichert.
- Source:
computeCollision(level, dsopt, dtopt)
Updated this.collision, sodass neue Kollisionen nachweisbar sind Dabei wird this.corners verwendet und jeder Kante zugeordnet, ob diese kollidiert. Zusätzich werden noch Kanten mit dx oder dy vorne im Namen zusätzlich zu this.collision hinzugefügt, welche die normalen Kanten nach kollisionen überprüfen, wobei diese ein kleines bisschen verschoben wurden
Parameters:
Name | Type | Attributes | Default | Description |
---|---|---|---|---|
level |
Level | das Level in dem nach Kollisionen geprüft wird |
||
ds |
number |
<optional> |
this.ds | die Größe, die ein kleiner Schritt ist |
dt |
number |
<optional> |
this.dt | Veränderung in Y richtung, die eine ds Änderung in X hat, bzw Veränderung in X Richtung, die eine ds Änderung in Y hat |
- Source:
computeSpriteatlas()
Berechnet den Spriteatlas aus dem Spritesheet. Also werden die Bilder im Spritesheet zurechtgeschnitten, sodass man die Sprites einzeln verwenden kann muss für jede Entität selber definiert werden
- Source:
keyboard()
führt Aktionen aus, je nachdem ob eine Taste gedrückt wurde dies muss für jeden Entity einzeln festgelegt werden
- Source:
moveToSurvace(xopt, yopt, conditionopt)
Bewegt die Entität in Richtung [x,y], bis diese auf der Oberfläche ist
Parameters:
Name | Type | Attributes | Default | Description |
---|---|---|---|---|
x |
number |
<optional> |
0 | X-Richtung |
y |
number |
<optional> |
1 | Y-Richtung |
condition |
condition |
<optional> |
_=>true | Weitere Sachen, die erfüllt sein müssen, damit weiter zur Oberfläche gegangen wird |
- Source:
physics()
Führt alles aus, was mit Physik zu tuen hat
- Source:
update(level)
Updated die Entität. Dazu gehört: timer höhersetzen tastatureingabe verarbeiten Wenn schon geladen, dann auch physik und kollisionen berechnen
Parameters:
Name | Type | Description |
---|---|---|
level |
Level | Das Level in dem sich die Entität befindet |
- Source:
Fires:
- Entity#event:keyboard
- Entity#event:computeCollision
- Entity#event:physics