Aufspüren

Aktives Aufspüren

Ein Akteur kann aufspüren, ob sich an seiner Position oder vor ihm andere Akteure usw. befinden.

Dies geht z.B. mit folgender Funktion:

actor.sensing_tokens(distance, token)

Die Funktion spürt auf, ob sich an der aktuellen Position des Actors (oder distance Schritte nach vorne) Akteure befinden. Wenn ja, dann werden diese als Liste zurückgegeben, andernfalls wird None zurückgegeben.

Beispiel

In dem Beispiel wird überprüft, ob der Akteur vor einer verschlossenen Tür steht:

actors_in_front = self.sensing_tokens(distance = 1, token = Door)
        if self.board.door in actors_in_front:
            if self.board.door.closed:
                message = "The Door is closes"

Aufspüren über Event-Methoden

Alternativ kann man auch Event-Methoden implementieren: Die Methode on_sensing_xy wird aufgerufen, jedesmal dann, wenn ein Akteur etwas bestimmtes aufspürt.

–> Siehe dazu auch events

Funktionen zum Aufspüren von Objekten

Sensing Tokens

Spürt Tokens auf

class miniworldmaker.tokens.token.Token(position=None)[source]
sensing_tokens(token_type=None, distance: int = 0)[source]

Senses if tokens are on tokens position :param token_type: filter by token type. Enter a class_name of tokens to look for here :param distance: Specifies the distance in front of the actuator to which the sensor reacts.

Returns: All tokens found by Sensor

Sensing Token

Spürt ein einzelnes Token auf. Die Methode ist effizienter als sensing_tokens

class miniworldmaker.tokens.token.Token(position=None)[source]
sensing_token(token_type=None, distance: int = 0)[source]

Senses if tokens are on tokens position. :param token_type: filter by token type. Enter a class_name of tokens to look for here :param distance: Specifies the distance in front of the actuator to which the sensor reacts.

Returns: First token found by Sensor

Examples

Sensing a fireplace in rpg-basic-template.py:

>>>  fireplace =  self.player.sensing_token(Fireplace)
>>>    if fireplace:
>>>      self.console.newline("Du zündest die Feuerstelle an.")
>>>      self.fireplace.burn()

Sensing Border

Prüft, ob ein Rand in der Nähe ist.

class miniworldmaker.tokens.token.Token(position=None)[source]
sensing_borders(distance: int = 0)[source]

Senses borders :param distance: Specifies the distance in front of the actuator to which the sensor reacts.

Returns: True if border was found.

Sensing Border

Prüft, ob die Position auf dem Spielfeld ist.

class miniworldmaker.tokens.token.Token(position=None)[source]
sensing_on_board(distance: int = 0) → bool[source]

Senses if token is on board

Parameters

distance – Specifies the distance in front of the actuator to which the sensor reacts.

Returns: True if token is on board

Sensing Color

Prüft die Farbe unter dem Actor (bezogen auf den Background der Spielwelt)

class miniworldmaker.tokens.token.Token(position=None)[source]
sensing_on_board(distance: int = 0) → bool[source]

Senses if token is on board

Parameters

distance – Specifies the distance in front of the actuator to which the sensor reacts.

Returns: True if token is on board