Jump to content
The Dark Mod Forums

Recommended Posts

Posted (edited)

Hi,

 

what i want is to compare two floats. It's about checking the distance between the player and an AI and start a script if the distance is bigger than 128. I wrote:

 

void folgehelfer()

{

boolean eingreifen;

string abstand;

abstand = $player1.distanceTo($helfer1);

sys.println(abstand);

eingreifen = abstand > 128;

if (eingreifen = true)

{

call unbefugt();

}

}

 

it doesnt work: type mismatch for '>'

 

Does TDM / D3 know '>' and '<'? What is wrong?

Edited by Jasp

$guard.moveToPosition($player1.getOrigin());

Posted (edited)

but this doesnt work.

 

if (eingreifen = true)

{

call unbefugt();

}

 

it works without the 'call'

 

(no, script doesnt work.. they are attacking the player right from the start... but im new to this and im on it :) )

Edited by Jasp

$guard.moveToPosition($player1.getOrigin());

Posted

As an aside, even though I took it out of my response, this statement:

 

if (eingreifen = true)

 

is going to set eingreifen to TRUE, and the logic test will always be TRUE.

 

What you want to use when you do this sort of thing is

 

if (eingreifen == true)

Posted

but this doesnt work.

 

if (eingreifen = true)

{

call unbefugt();

}

 

it works without the 'call'

 

(no, script doesnt work.. they are attacking the player right from the start... but im new to this and im on it :) )

 

Yes, mea culpa. Should have noticed that.

 

Edit: It's probably not working because your logic statement is wrong. See my note above.

Posted

this is the whole thing. Works now, thanks alot!

 

void befugt()

{

$wache1.setEntityRelation($player1,1);

$wache1.setAlertLevel(0);

$wache2.setEntityRelation($player1,1);

$wache2.setAlertLevel(0);

sys.println("befugt");

}

 

void unbefugt()

{

$wache1.setEntityRelation($player1,-1);

$wache2.setEntityRelation($player1,-1);

sys.println("unbefugt");

}

 

void folgehelfer()

{

boolean eingreifen;

float abstand;

abstand = $player1.distanceTo($helfer1);

sys.println(abstand);

eingreifen = abstand > 128;

if (eingreifen)

{

unbefugt ();

}

else

{

befugt ();

}

}

$guard.moveToPosition($player1.getOrigin());

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recent Status Updates

    • JackFarmer

      Happy Labour Day, my taffing taffers & hard working mapping friends!
      And remember the poor souls who, within the Inventors’ organization, labor under Jonus’s yoke to ensure the success of that very guild! Always remember the hard workers!
      · 0 replies
    • datiswous

      Is there a script command to make a screenshot?
      I just though it could be interesting to be able to create a screenshot at a certain point in time. Then use that screenshot possibly in a debrief.
      I guess the second question is: Can you use a (in-game made) screenshot in a (debrief) gui?
      · 1 reply
    • Bikerdude  »  Display Cement

      So what type, and what ratio of portland to sand 😏
      · 1 reply
    • JackFarmer

      Our esteemed professional mapping predecessors from 20 years ago faced the same challenges we do today!
      · 2 replies
    • snatcher

      TDM Modpack 5.1 is out!
      · 0 replies
×
×
  • Create New...