Asmodean's Forum Posts

  • If you only want to know if it's Left, Right, Top, Bottom. You could use 'is overlapping at offset':

    + Goodie: Is overlapping Baddie at offset (1, 0)

    -> DebugOut: Set text to "right"

    + System: Else

    + Goodie: Is overlapping Baddie at offset (-1, 0)

    -> DebugOut: Set text to "Left"

    + System: Else

    + Goodie: Is overlapping Baddie at offset (0, 1)

    -> DebugOut: Set text to "Bottom"

    + System: Else

    + Goodie: Is overlapping Baddie at offset (0, -1)

    -> DebugOut: Set text to "Top"

    + System: Else

    -> DebugOut: Set text to "No collision"

  • It points to 0,0 (top, left corner) of the layout. That happens if you use touch.x touch.y without a condition. So, if there is no touch event the x and y values will be 0. I think this happens because auf event 6. You disabled the condition but not the action. So every tick the turret rotate to touch.xy and this ist 0,0 if you don't touch the display or click the mouse.

  • If you don't change it in the preferences and use editor.construct.net (without any /rxxx) it should be the stable r157.

  • I have the beta release enabled. try editor.construct.net/r163

  • I would simply use pin and pin the turret without angle on the tank body.

    I made an example:

    https://drive.google.com/open?id=108ZUT6WVjsKxZFtkQC-V_dn70c65WG-L

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • in my last example, the search is case insensitive. You can write upper- or lowercase and it will find the word. If you don't want that delete the lowercase expression.

  • It doesn't work because you have white spaces in your text file. You have to use trim to eliminate them and if your search isn't case sensitive I would also use lowercase.

    That should now work:

    + System: On start of layout

    -> Array: Set size to (0, 1, 1)

    -> AJAX: Request mproduct.txt (tag "produkt")

    + AJAX: On "produkt" completed

    ----+ System: For "" from 0 to tokencount(AJAX.LastData,";")-2

    -----> Array: Push back lowercase(trim(tokenat(AJAX.LastData,LoopIndex,";"))) on X axis

    + TextBox: On text changed

    -> Text: Set text to TextBox.Text

    + Button: On clicked

    ----+ Array: Contains value lowercase(trim(Text.Text))

    -----> Text: Set text to "found"

    Image Upload doesn't work.

  • contains value only takes a string.

    That should work:

  • I think that is not a problem with the modulo operator, instead is a rounding problem with the add 0.1.

    Try: System| set timer to round(timer*10)/10

    after your System| Add 0.1 to timer.

  • If the max. speed is 60 pixel/sec you need an acceleration of 3600 pixel/sec² (60*60), then you have the max speed in one tick.

  • Set the Array to Size 0 at the beginning:

    Array: Set size to (0, 1, 1)

    Now you can copy the string to the array:

    + System: For "" from 0 to len(string)-1

    -> Array: Push back mid(string,LoopIndex,1) on X axis

  • Try:

    Every tick -> Sprite|Rotate round((Mouse.X-Sprite.X)/(OriginalWindowWidth*0.5)*10) degrees clockwise

    That calculates the distance from the mouse to the sprite in x direction and normalize it. That means that the left is -1 the middle 0 and the right border is +1. The 10 is the rotation speed, you can change it.

  • This should work. With index and rnd as variable.

    Every click on the button there should be another key in the text-field.

    + Button: On clicked

    -> System: Set rnd to int(random(0,Dictionary.KeyCount))

    -> System: Set index to -1

    ----+ Dictionary: For each key

    -----> System: Add 1 to index

    --------+ System: index = rnd

    ---------> Text: Set text to Dictionary.CurrentKey

  • Try to insert in event 5 as second action (after the set angle toward):

    stroke|Set angle to round(stroke.angle/45)*45 degrees

  • Then it's even more impressive. How many hours per day did you worked on it?