The following warnings occurred:
Warning [2] Use of undefined constant SAPI_NAME - assumed 'SAPI_NAME' (this will throw an Error in a future version of PHP) - Line: 3388 - File: inc/functions.php PHP 7.4.33-nmm6 (Linux)
File Line Function
/inc/functions.php 3388 errorHandler->error
/showthread.php 116 build_archive_link
Warning [2] Use of undefined constant IN_ARCHIVE - assumed 'IN_ARCHIVE' (this will throw an Error in a future version of PHP) - Line: 3331 - File: inc/functions.php PHP 7.4.33-nmm6 (Linux)
File Line Function
/inc/functions.php 3331 errorHandler->error
/inc/functions.php 3324 build_forum_breadcrumb
/showthread.php 195 build_forum_breadcrumb
Warning [2] Use of undefined constant IN_ARCHIVE - assumed 'IN_ARCHIVE' (this will throw an Error in a future version of PHP) - Line: 3331 - File: inc/functions.php PHP 7.4.33-nmm6 (Linux)
File Line Function
/inc/functions.php 3331 errorHandler->error
/showthread.php 195 build_forum_breadcrumb






Post Reply 
 
Thread Rating:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
FOR Behavior question
Author Message
PePs1Man
Apprentice
*

Posts: 32
Likes Given: 8
Likes Received: 2 in 2 posts
Joined: Jun 2017
Reputation: 0



Post: #1
FOR Behavior question
Hello,

I have a little question on a FOR behavior that I have.
I want to know if this is OK to be scripted that way.

Code:
        FORCHARS 16
            If <Brain>
                If ((!<ISTIMERF.f_AI>)&&(<Tag0.AI_Expire>==0))
                    f_AI
                    Return 1
                EndIf
            EndIf
        ENDFOR

That code will loop thru allplayers around 16 tiles away, check if they have a brain(npc) and add the function f_AI to the character.

My question lies in the RETURN 1 function.

With Return 1, the script will loop the npc 1 by 1
Without Return 1 the script will perform the tasks all at once

To me it seems more optimized if I use Return 1 and may prevent a mass flood if lots of character is around.

Any thoughts ?
07-16-2017 12:24 AM
Find all posts by this user Like Post Quote this message in a reply
darksun84
Sir Spamalot
****

Posts: 1,687
Likes Given: 245
Likes Received: 162 in 151 posts
Joined: Mar 2012
Reputation: 35



Post: #2
RE: FOR Behavior question
In your case, if you need to find only one character then it's ok to use return 1.

I mean with return 1 the FOR will not loop the npc one by one, but just stops when the return is reached ( and exit the function)

There is also the BREAK/CONTINUE keywords that can be used inside a FOR loop, but it seems that if BREAK is placed inside an IF that is inside a FOR it will just exit the loop and function (instead of exiting only the loop).
(This post was last modified: 07-20-2017 12:09 AM by darksun84.)
07-19-2017 11:57 PM
Find all posts by this user Like Post Quote this message in a reply
Post Reply 


Forum Jump:


User(s) browsing this thread: 2 Guest(s)