[R144] OR block still broken after patch fix

Bugs will be moved here once resolved.

Post » Sun Sep 15, 2013 11:36 am

Following patch: https://dl.dropboxusercontent.com/u/15217362/r144fix.zip

From thread: http://www.scirra.com/forum/r144-or-block-is-broken_topic75820.html

The OR block still isn't working properly. Perhaps it's just reverting back to 143?

Link to .capx file (required!):
https://dl.dropboxusercontent.com/u/41218343/OR%20Bug%20mixture%20of%20condition%20types.capx

Steps to reproduce:
1. Launch in preview from layout "Run"
2.
3.

Observed result:

See the red sprite:
Instance variable (condition not met)
OR   >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>Event does not fire (Rotate 45)
Global (condition met)

The 2nd condition is not noticed. It only happens when there is a mixture of a sprite condition and a global condition and in that order. The other three sprites rotate as expected, which are various mixtures of global/instance variable conditions. The yellow and red sprite conditions are identical except for the order in the OR block.

Expected result:

All sprites should rotate 45 degrees

Browsers affected:
Chrome: yes


Operating system & service pack:
WIn 7 64bit
Construct 2 version:
R144
    Nathan2013-09-15 11:39:03
B
29
S
8
G
4
Posts: 61
Reputation: 6,205

Post » Sun Sep 15, 2013 5:47 pm

Where did they distribute that patch?
B
71
S
24
G
11
Posts: 452
Reputation: 12,343

Post » Mon Sep 16, 2013 6:12 am

@Draspur It was in this thread:

http://www.scirra.com/forum/r144-or-block-is-broken_topic75820.html

You have to overwrite eveng.js

Generally the OR works ok, just not in certain circumstances.
B
29
S
8
G
4
Posts: 61
Reputation: 6,205

Post » Mon Sep 16, 2013 1:58 pm

I think this is fixed for the next build, but note your expected result is wrong. Where you compare the instance variable to "something", neither the yellow nor red objects meet that condition, so are un-picked. The event still runs due to the system condition being true, but the action has no effect since no instances are picked. So the correct result is when the red and yellow sprites don't rotate but the other two do.
Scirra Founder
B
395
S
232
G
88
Posts: 24,371
Reputation: 193,762

Post » Mon Sep 16, 2013 3:11 pm

@Ashley I wouldn't have expected them to have been picked by a false condition on its own, but if the system condition is the one which returns true, shouldn't the red and yellow squares still be picked due to the parent event the OR block is a sub event of? Please can you confirm that they would still be picked by the parent event (in this case object creation)? Thanks
B
29
S
8
G
4
Posts: 61
Reputation: 6,205

Post » Mon Sep 16, 2013 3:33 pm

@Nathan - no, OR blocks always run all the conditions even if an early condition returns true, so that the correct objects are picked (especially important for conditions like "Object X < 100 OR Object Y < 100"). So even if a system condition is first and returns true, it will still run the second condition that returns false for the instance, unpicks it, then runs the event, no instances are picked, thus the action has no effect.
Scirra Founder
B
395
S
232
G
88
Posts: 24,371
Reputation: 193,762


Return to Closed bugs

Who is online

Users browsing this forum: No registered users and 2 guests