-snip, boom-
Druckbare Version
-snip, boom-
es würde ja wahrscheinlich mit nem 64x64 store memory gehen aber ich weis nich wie ich die daten dann auf dem bildschirm halte
Wie kann man die Geschwindkeit eines Entity bekommen?
Wenn ich entity():vel() mache bekomme ich einen Fehler: Variable overlaoded oder so ähnlich.
Außerdem würde ich gerne wissen wie ApplyOffsetForce und ApplyForce genau funktioniert. Z.B. das ein Enitiy einen folgt oder ein Entity an der selben Postion mit dem selben angles bleibt (also 0,0,0).
wie kann ich eine funktion einma abrufen?
ich bau immoment ein code wo den spieler aus dem auto wirft wen es ihm nicht gehört
nur funktioniert es nicht so wie ich will ..Code:@name Driver message
@inputs CAR:entity
@outputs
@persist
DRIVER= CAR:driver()
if(DRIVER:name() == CAR:owner():name())
{
DRIVER:hintDriver("Scannig ........ You are the owner of the car!",5)
DRIVER:hintDriver("You are not ejected!",5)
}
else
{
DRIVER:hintDriver("YOU ASSHOLE STFU AND EJECT OUT OF MY CAR!",3)
DRIVER:ejectPod()
}
wen ich interval reinmache dan schreibt der die message jede XX milisekunde
und mit timer wiederholt er sich immer
ich hab es schon mit timer("funktion",N) und stoptimer("timer") veruscht aber er stoppt so schnell das er die message nicht anzeigt ?
was kann ich da machen ?
weis einer wie man ein oder macht
also if(A == 1 "oder" B == 3){C = 2}
beim ersten war es ja das ,
Kann das wer in Expression 2 umschreiben ?
Code:N@Advanced Smoother
I@Target Speed Acceleration
O@Value Active
# Activate when target has been set
~Target -> Active = 1;
# Main computation loop
first() | clk() ->
# Precomputation of inputs
!Acceleration -> Acceleration = Speed * 50 * 2;
AccLength = Speed^2 / Acceleration / 2
AccRate = min(Speed, Acceleration / 50)
# Precomputation of variables
Distance = Target - Value
Direction = Distance >= 0 ? 1 : -1
# Calculate ideal speed modifier
IdealRate = Speed * Direction
abs(Distance) <= AccLength ->
IdealRate *= sqrt(abs(Distance - Rate / 50) / AccLength);
# Calculate final speed for iteration
Rate += clamp(IdealRate - Rate, -Acceleration / 50, Acceleration / 50)
Value += Rate / 50
# Check if value has reached target
Active = abs(Rate) > AccRate
| abs(Distance) > AccRate / 50
!Active -> Rate = 0, Value = Target;;
# Schedule the main loop if active
Active -> interval(20);
Hab ein Problem mit dem Wirelink tool
habe diesen Expression 2 Code
So.., nun benutze ich das Wirelink toll auf den Consol Screen und versuche das E2-Gate mit dem Screen zu verbinden, leider geht es nicht weil irgendein Wert auf NIL steht, auf deutsch, da klappt was mit dem Wirelink tool nicht (denke ich mir zumindest, da ich auch kein wirelink output am Consol Screen habe)Code:@name stringtest
@inputs Console:wirelink
@outputs
@persist Teststring:string Counter
interval(20)
Teststring = "This is a Teststring!"
if(Counter > Teststring:length() ) {Counter = 0}
Console:writeCell(Counter*2-2,toByte(Teststring,Counter))
Console:writeCell(Counter*2-1,999) #this sets the color
Counter += 1
Danke für die hilfe (hab gesucht und nichts gefunden!)
Ich habe mich auch mal mit E2 porbiert, doch es gibt i-wie ein Problem mit den "{" Klammern, d.h. da gibt er einen Fehler aus:
Und gibt es Verbesserungsvorschläge ?Code:@name VehicleCode
@inputs W A S D
@outputs TRight TLeft TBack
@persist D
If (W == 1) {TBack = 1}
Else {TBack = 0}
If (S == 1) {TBack = -1}
Else {TBack = 0}
If (A == 1) {TRight = 1 & TLeft = -1}
Else {TRight = 0 & TLeft = 0}
If (D == 1) {TLeft= 1 & TRight = -1}
Else {TLeft = 0 & TRight = 0}
If (groß) -> if (klein)
Else (groß) zu else (klein)
in der ausgabe & zu einem , machen
fertig
--------------
Aky ------->
--------------
nimm das Expression 2 - wirelink tool (bei debugger , wire, gate)
klick 1 mal auf den console screen (beim 2ten mal können fehler auftretten)
da kannst du wirelink vom expression2 an den console screen wiren
--------------
Gidius ------>
--------------
schau im zeigt eure expressions thread da habe ichs schon gemacht