Frage von Saramolo, 26

Ich brauche einen Script mit dem ich das Subject eines Messagers in das Value eines Property Actuators einfügen kann, kann mir jemand helfen?

ich sende eine Message an ein objekt, die message ist z.B. 1 . im message sensor des objektes ist kein subjekt eingetragen, ich brauche ein skript das, wen der messager aktiviert wird, also eine message an das objekt geschickt wird die message liest, also in disem fall 1 und diese in das value eines property actuators einfügt. Die property soll der gesundheits stand des objektes sein und wen das objekt "schaden nimmt" wird eine message mit dem schadenswert an das objekt geschickt, aber da es durch mehrere ataken unterschiedlichen schaden nemen kann und ich nicht für jede mögliche atakte einen eigenen Message actuator erstellen will brauch ich den Script

Antwort
von Prisonofmind1, 13

Hier findest du alles, was du brauchst: http://bgepython.tutorialsforblender3d.com/

Einfach Message-Sensor anschließen, das Script den Inhalt auslesen lassen und ihn in den Actuator eintragen.

Kommentar von Saramolo ,

ich hab es schon mit volgendem Script versucht, aber die propertiy wird  einfach nur einmalig auf -1 gesetzt

import bge

cont = bge.logic.getCurrentController()

message = cont.sensors["Message"]
prop = cont.actuators["Property"]

if message.positive:
message_subject = message.subject

prop.value = "message_subject"

cont.activate(prop)
Kommentar von Prisonofmind1 ,

Ich sehe gerade, dass man Message Sensors, die keinen festgelegten Subject haben, gar nicht abfragen kann.

Was willst du in deinem Spiel denn damit erreichen? Soll es eine Schusswaffe sein?

Kommentar von Saramolo ,

Aber in einem anderen Script habe ich auch einen lehren message sensor abgefragt und das funktioniert ohne probleme. abgerufen wird das subjekt mit volgendem Code. Ich habe es auch schon mit diesem Code versucht, aber mit dem selben Ergebniss wie forher, nämlich das die property einmalig auf -1 gestellt wird egal was für eine zahl im message sensor ankommt

itemname=messagecollect.subjects[0]

Es sollen verschiedene waffen sein aber in richtung Schwerter und Äxte.

Kommentar von Saramolo ,

Es funktioniert doch, ich hatte anscheinend irgendwo einen Schreibfehler

prop.value = message.subjects[0]

Kommentar von Prisonofmind1 ,

Ja, subjects abfragen ist auch noch eine Möglichkeit, wobei ich mir nicht sicher bin, ob das aktuell ist. Hast du es mal mit verschiedenen Schadenswerten versucht?

Keine passende Antwort gefunden?

Fragen Sie die Community