Difference between revisions of "Sync"

From Unofficial QEdit Wiki Guide
Jump to: navigation, search
(Use)
Line 5: Line 5:
  
 
==Use==
 
==Use==
 +
Cause a thread to yield. PSO's quest engine is single threaded and every thread is allowed to on each and every frame. If a thread never yields, the client will freeze. Special menus called through opcodes will yield on their own.
 +
 
Pause function for a single frame. Used to delay actions. 30 frames = 1 second
 
Pause function for a single frame. Used to delay actions. 30 frames = 1 second
  

Revision as of 23:56, 27 December 2022

Syntax

Syntax: sync

  • None

Use

Cause a thread to yield. PSO's quest engine is single threaded and every thread is allowed to on each and every frame. If a thread never yields, the client will freeze. Special menus called through opcodes will yield on their own.

Pause function for a single frame. Used to delay actions. 30 frames = 1 second

Example


100:     call 101 //Call function 101
         window_msg 'Okay. I've waited 1 second. Now what?'
         winend 
         ret 
101:     sync //Pause for 1 frame
         addi R1, 00000001 //Add 1 to register R1
         jmpi_<= R1, 0000001E, 101 //If R1 is less then or equal to 30 jump to 101
         clear R1 //Set R1 to 0
         ret 

Also see

ret, call, window_msg, winend, addi, jmp_<=, clear