Difference between revisions of "Talk:If"
imported>Mrflippy |
imported>JOG m |
||
Line 12: | Line 12: | ||
--[[User:JOG|JOG]] 15:21, 14 April 2006 (EDT)Doesn't help as far as I've tested it. | --[[User:JOG|JOG]] 15:21, 14 April 2006 (EDT)Doesn't help as far as I've tested it. | ||
--[[User:JOG|JOG]] 04:51, 17 April 2006 (EDT) Didn't really read and thought you asked about AND/OR as bitwise operators. Of course brackets work but since OR always has priority over AND you need to include the AND part. | |||
== tabs and spaces == | == tabs and spaces == |
Revision as of 03:51, 17 April 2006
Do brackets help in logical operations?
IE: elseif Random > 75 && ( LilRandom == 4 || LilRandom2 == 4 )
That should be if Random is over 75, and LilRandom or LilRandom2 equals 4, but what I gather is that Oblivion will interpret it as:
if Random is over 75 and LilRandom is equal to 4, OR LilRandom equals 4.
Logically it should interpret it the prior, but with Oblivion, I'm not so sure. --MaXiMiUS 21:42, 9 April 2006 (EDT)
--JOG 15:21, 14 April 2006 (EDT)Doesn't help as far as I've tested it.
--JOG 04:51, 17 April 2006 (EDT) Didn't really read and thought you asked about AND/OR as bitwise operators. Of course brackets work but since OR always has priority over AND you need to include the AND part.
tabs and spaces
I just spent an hour searching for a bug in a script using &&:
Apparently certain combination of tabs and spaces between the two parameters cause the IF-Block to break processing of the script. No commands within the IF-Block or after the IF-Block are executed.
Here is an example:
http://home.tiscali.de/jo.ge1/tabs_working.txt
This one works fine: for each of the three objects you get a Journal entry when you activate it and can activate it as often as you like.
http://home.tiscali.de/jo.ge1/tabs_not_working.txt
The second one doesn't work: You just get the journal entry when you activate the first object, no activation, And the second and third object can't be activated at all.
--JOG 15:27, 14 April 2006 (EDT)
Gotchas
The following if condition compiled (I forgot to type the last angleA):
if (angleA >= 0 && angleA <= 90) || (angleA >= 180 && < 270)
Once my script hit this line, it stopped working completely. No indication that anything was wrong. --Mrflippy 21:06, 15 April 2006 (EDT)