While

From NexusWiki
Jump to: navigation, search

While (condition, command);

It executes the command, until the ’condition’ is true (=1). It is suitable only for framing immediately executing cycles. In other words, the ’condition’ value can be changed _ONLY_ by the command; so this cycle is not suitable for delaying (when the condition is an event, a timer, or a user action)!!!

In the Delay and When functions (because of technical reasons) the unique identifier must be given (’_UID’, arbitrary string) that can occur only once in a ruleset. If you tried to use it several times, than the reader will signal error. It is recommendable to start the ’_UID’ arbitrary string with a ’_’ character, because this will make it easier to read in the debug text. You can write 0 instead of UID, then the identifier will be generated automatically. You can only give an identifier this way, if there might be a chance that the event has to be stopped early (with ClearTimer), WHICH MEANS NEVER, or if you want to make the event easily findable, from debug point of view.

Script structure commands


Structure
Choose - ChooseFirst - Delay - If - IsValid - When - While

Variable manager
Ceil - Cos - Exp - Floor - Log - Max - Min - Not - Pow - Rnd - Round - Sin - Sqrt - Col - CHeat - CPlanck - CInv - CAdd - CAdda - CMul - CLerp - CBrig - CEqu - GetVal - IsName - Rot - V2Rot - R2Vec - Requ - RNull - SLen - SCat - SSub - SNum - SNumPad - SCmp - SiCmp - Set - SetVal - XfIdent - XfTran - XfRotX - XfRotY - XfRotZ - XfRot - XfScale - XfInv - XfTran - XfMul - Vec - VNull - VRandomOrth - VLen - VSqLen - VNorm - VNeg - VAdd - VSub - VMul - VDot - VCross - VEqu - VXform

Selection
AddItem - AddList - AllNum - Copy - CopyIf - DeleteSelect - Deselect - Dim - Empty - ExecList - obj:Colony - FindUnder - FirstNotScanned - GetFreeSel - GetN - IndexOf - InSelection - MaxList - NumOf - Pick - PickFirst - PickMax - PickN - RemoveFirst - RemoveItem - Select - SelectBoats - SelectDevices - SelectEx - SelectShips - SelWeightMul - SetN -SubList

Event handling
Call - ClearTimer - Disable - Enable - EventEx - LocalEvent - MEvent - PEvent - Return - RootEvent - Timer - StartTimer - UCall - UEvent - UTimer - EnableGUIEvents - RequestFiredEvent - obj:tRequestCriticalDamageEvent - obj:tRequestDetectionEvent - obj:tRequestEnergyOnMax - obj:tRequestNoShipsInRangeEvent - obj:tRequestOverforceEvent - obj:tRequestShipInRangeEvent

Statemachine
ChangeState - ChangeTick - GetMachine - IsInState - LeaveState

Multiplay
MpGameOver - MpGetPlayer - MpGetPlayerCount - MpGetPlayerKills - MpGetPlayerGain - MpGetTeamKills - MpGetTeamGain - MpGetTeamRace - MpGetWinningCondition - MpGetWinningConditionParam - MpHoldPrepare - MpHoldPrepare - MpIsIndividual - MpIsPlayerValid - MpEnableJumpIn - MpEnableJumpOut - MpSetDead - MpSetTeamGain - MpSetPlayerGain - MpSetWinnerTeam - MpSetWinnerPlayer - MpSpawnPoint - SetSceneRadius


- view all commands -