Diff of /branches/VisonGame1805/Display_Escape_PLC/Plc Logic/Application/Function Blocks/Puzzle/VisionGameStateMachine/svnobj [000000] .. [r59]  Maximize  Restore

Switch to unified view

a b/branches/VisonGame1805/Display_Escape_PLC/Plc Logic/Application/Function Blocks/Puzzle/VisionGameStateMachine/svnobj
1
Gx_lÄG!0…jüoU-áAÛÈGk¡HSystem.StringL{6f9dac99-8de1-4efc-8465-68ac443b7d08}SpecialFuncL{0db3d7bb-cde0-4416-9a7b-ce49a0124323}NoneImplementationL{3b83b776-fb25-43b8-99f2-3c507c9143fc}TextDocument    L{f3878285-8e4f-490b-bb1b-9acbb7eb04db}
2
TextLinesL{a5de0b0b-1cb5-4913-ac21-9d70293ec00d}Id
longTagText4//---- Client init  ----\\$IF NOT xInit THEN N UM            (    sName := 'Normal Operation', ì                    dwSupportedStates := PACK_ML.State.All - PACK_ML.State.Suspending - PACK_ML.State.Suspended - PACK_ML.State.UnSuspending - PACK_ML.Holding - PACK_ML.Held - PACK_ML.UnHolding, Ô                    dwAllowsLeavingFromStates := PACK_ML.State.Stopped OR PACK_ML.State.Aborted OR PACK_ML.State.Idle, Ö                    dwAllowsEnteringIntoStates := PACK_ML.State.Stopped OR PACK_ML.State.Aborted OR PACK_ML.State.Idle, \                   eInitialState := PACK_ML.State.Aborted,0                     xActive := TRUE);   xInit := TRUE; END_IFD//---- Client communicatie  ----\\4IF Client.bReadyToPLC THEN:   CASE Client.iCommandToPLC OF" 0 :    //Handshake    1 :    //Lock!       IF SysStrCmp(Client.sCommandToPLC, Client.LockCommands[0]) =  0 THEN      "0       //First Lock Function#Ž        SendCommand(Command:= CommandType.Key,Value:=Client.KeyCommands[0]);$–       ELSIF SysStrCmp(Client.sCommandToPLC, Client.LockCommands[1]) =  0 THEN    %2       //Second Lock Function&Ž          SendCommand(Command:= CommandType.Key,Value:=Client.KeyCommands[1]);'    END_IF( 2 :    //Key)   3 :    //IO* 4 :    //Media+   5 :    //Hint, 6 :    //State -p    IF SysStrCmp(Client.sCommandFromPLC, 'SC') =  0 THEN      .&       StateComplete();/x    ELSIF SysStrCmp(Client.sCommandToPLC, 'Start') =  0 THEN      0       Start();1v    ELSIF SysStrCmp(Client.sCommandToPLC, 'Stop') =  0 THEN    2       Stop();3x      ELSIF SysStrCmp(Client.sCommandToPLC, 'Reset') =  0 THEN      4       Reset();5x    ELSIF SysStrCmp(Client.sCommandToPLC, 'Abort') =  0 THEN      6       Abort();7x    ELSIF SysStrCmp(Client.sCommandToPLC, 'Clear') =  0 THEN      8       Clear();9v    ELSIF SysStrCmp(Client.sCommandToPLC, 'Hold') =  0 THEN    :       Hold();;z      ELSIF SysStrCmp(Client.sCommandToPLC, 'UnHold') =  0 THEN    <       Unhold(); =|    ELSIF SysStrCmp(Client.sCommandToPLC, 'Suspend') =  0 THEN      >       Suspend();?€       ELSIF SysStrCmp(Client.sCommandToPLC, 'UnSuspend') =  0 THEN      @       UnSuspend();A    B END_CASEC6 Client.iCommandToPLC := 0;D8 Client.sCommandToPLC := '';E:   Client.bReadyToPLC := FALSE;FD//---- Client statemachine  ----\\Gparser();H.CASE UM.CurrentState OFI,PACK_ML.State.Stopped:J ;K,PACK_ML.State.Aborted:L&PACK_ML.State.Idle:M2PACK_ML.State.Complete : N.PACK_ML.State.Execute :O( CASE Client.Mode OFPV      Mode.Mode1: // Target practise simulationQJ         IF puzzleTimer.iProcess = 25 THEN;Rº             //   SendCommand(Command := CommandType.Hint ,Value := 'Collect the object in the room.'); S       END_IFTJ       IF puzzleTimer.iProcess = 50 THEN;Uš             //SendCommand(Command := CommandType.Media ,Value := 'Padlock K000367');   V       END_IF         WJ       IF puzzleTimer.iProcess = 75 THEN;X          //Y       Z4 CASE Client.ActualStep OF[
3
                \¬    0: // determine if depending on the level of the game the calibration step is needed.]P      IF Client.Level = Level.Beginner THEN;^6       Client.ActualStep := 30;_    ELSE`6       Client.ActualStep := 10;aP 10:// stappen voor het ijken van camerab2      xHide_ijkpunt := FALSE;c:      xHide_Text_Center := FALSE;d   20:ed   30: // Hide the ijkpunten Start van de visiongamef0      xHide_ijkpunt := TRUE;g8    xHide_Text_Center := TRUE;h4    xHide_Crosshair := TRUE;i4    xHide_Text_Top := FALSE;j´       parser( sInputString := 'Welcome Sailors! You will participate in a training exercise ',k&          xStart := TRUE,l              );mZ    sInstructionString := parser.sOutputString;n.      IF parser.xDone THEN;o4         xHide_Button3 := FALSE;p6         IF xContinueScreen THEN;q8          Client.ActualStep := 32;r6          parser.xStart := FALSE;s4            xHide_Button3 := TRUE;t:          xContinueScreen := FALSE;u         END_IF            v
4
    32: w’       parser( sInputString := 'Remember, this is only a combat simulation. ',x8            Client.ActualStep := 34;y 34:zÐ     parser( sInputString := 'Your object is to Locate the practice target Leopold I of the Belgian navy ',{8          Client.ActualStep := 36;|
5
    36: }š       parser( sInputString := 'Use the Festo Vision Sensors to mark the target ',~8            Client.ActualStep := 38; 38:€           2PACK_ML.State.Resetting :‚"   StateComplete();ƒ0PACK_ML.State.Starting :„4PACK_ML.State.Completing :…0PACK_ML.State.Aborting :†.PACK_ML.State.Stopping:‡2PACK_ML.State.Clearing :  ˆEND_CASE‰.//---- Emergency ----\\ŠVIF NOT x_EmergencyGF AND x_EmergencyFF THEN‹(    //Emergency Abort.Œ  Abort();   8//---- State handling ----\\ŽLClient.ActualState := UM.CurrentState;>messageQueue(Client := Client);äpuzzleTimer(xStartTimer := UM.CurrentState = PACK_ML.State.Execute ,xPauseTimer := ,xStopTimer:= NOT (UM.CurrentState = PACK_ML.State.Execute),tMaxPuzzleTime := Client.Duration);‘PClient.Progress := puzzleTimer.iProcess;’FIF puzzleTimer.iProcess >= 100 THEN“ Stop();”Interface•L{a9ed5b7e-75c5-4651-af16-d2c27e98cb94}–JFUNCTION_BLOCK VisionGameStateMachine—VAR_IN_OUT˜.  Client : PuzzleClient;™END_VARšVAR›0  UM   : PACK_ML.UnitMode; œj    xInit          : BOOL := FALSE; // Flag for initialization:  messageQueue : MessageQueue;ž6    puzzleTimer : PuzzleTimer;Ÿ//  2parser        : StringParser;¡// Hiding¢6xHide_Map     : BOOL := TRUE;£<xHide_Leopold   : BOOL := TRUE;¤>xHide_Leopold2     : BOOL := TRUE;¥<xHide_Zeeland   : BOOL := TRUE;¦>xHide_Rotterdam : BOOL := TRUE;§<xHide_Dolfijn  : BOOL := TRUE;¨<xHide_ijkpunt   : BOOL := TRUE;©>xHide_Crosshair : BOOL := TRUE;ª<xHide_Text_Top : BOOL := TRUE;«BxHide_Text_Center   :BOOL := TRUE;¬<xHide_Button1     : BOOL := TRUE;­<xHide_Button2       : BOOL := TRUE;®<xHide_Button3       : BOOL := TRUE;¯<sInstructionString  :   STRING;°>sInstructionString2    :   STRING;±2sButtonString1     : STRING;²2sButtonString2     : STRING;³.sTempString1     : STRING;´.sTempString2     : STRING;µBxContinueScreen       : BOOL := FALSE;¶"UniqueIdGenerator·558¸POULevel¹L{8e575c5b-1d37-49c6-941b-5c0ec7874787}ºStandard» ChildObjectGuids¼8System.Collections.ArrayList½,AddAttributeSubsequent¾boolÐÐ-ÐÐ   E
6
æÐÐ
­$ÚÐ-ÐÐ
­%ÚÐ-ÐÐ
­ÚÐ-ÐÐ
­ÚÐ-ÐÐ
­ÚÐ-ÐÐ
­ÚÐ-ÐÐ
­ÚÐ-ÐÐ
­ÚÐ-ÐÐ
­ÚÐ-ÐÐ
­ÚÐ-ÐÐ
­lÚÐ-ÐÐ
­eÚÐ-ÐÐ
­ÚÐ-ÐÐ
­*ÚÐ-ÐÐ
­ŽÚÐ-ÐÐ
­ÚÐ-ÐÐ
­ÚÐ-ÐÐ
­”ÚÐ-ÐÐ
­®ÚÐ-ÐÐ
­–ÚÐ- ÐÐ
­µÚÐ-!ÐÐ
­´ÚÐ-"ÐÐ
­÷ÚÐ-#ÐÐ
­¶ÚÐ-$ÐÐ
­·ÚÐ-%ÐÐ
­&ÚÐ-&ÐÐ
­¯ÚÐ-'ÐÐ
­©ÚÐ-(ÐÐ
­ÚÚÐ-)ÐÐ
­«ÚÐ-*ÐÐ
­¬ÚÐ-+ÐÐ
­­ÚÐ-,ÐÐ
­¹ÚÐ--ÐÐ
­ºÚÐ-.ÐÐ
­»ÚÐ-/ÐÐ
­¾ÚÐ-0ÐÐ
­¿ÚÐ-1ÐÐ
­ÀÚÐ-2ÐÐ
­ÁÚÐ-3ÐÐ
­ÂÚÐ-4ÐÐ
­ÃÚÐ-5ÐÐ
­ÄÚÐ-6ÐÐ
­ÅÚÐ-7ÐÐ
­ÆÚÐ-8ÐÐ
­ÇÚÐ-9ÐÐ
­ÈÚÐ-:ÐÐ
­ÉÚÐ-;ÐÐ
­ÎÚÐ-<ÐÐ
­ÏÚÐ-=ÐÐ
­ÐÚÐ->ÐÐ
­ÑÚÐ-?ÐÐ
­¼ÚÐ-@ÐÐ
­¸ÚÐ-'ÐÐ
­½ÚÐ-AÐÐ
­—ÚÐ-BÐÐ
­ÓÚÐ-ÐÐ
­ÕÚÐ-CÐÐ
­ÖÚÐ-DÐÐ
­×ÚÐ-EÐÐ
­•ÚÐ-ÐÐ
­“ÚÐ-ÐÐ
­ÚÐ-FÐÐ
­ÑÚÐ-ÐÐ
­ÒÚÐ-GÐÐ
­ÚÐ-ÐÐ
­ÚÐ-HÐÐ
­ÚÐ-IÐÐ
­ÚÐ-JÐÐ
­ÚÐ-KÐÐ
­ÚÐ-JÐÐ
­ÚÐ-LÐÐ
­ÚÐ-JÐÐ
­ ÚÐ-MÐÐ
­¦ÚÐ-JÐÐ
­ŸÚÐ-NÐÐ
­GÚÐ-AÐÐ
­[ÚÐ-OÐÐ
­\ÚÐ-AÐÐ
­^ÚÐ-PÐÐ
­wÚÐ-QÐÐ
­xÚÐ-RÐÐ
­yÚÐ-SÐÐ
­zÚÐ-TÐÐ
­{ÚÐ-UÐÐ
­|ÚÐ-VÐÐ
­}ÚÐ-WÐÐ
­ƒÚÐ-XÐÐ
­vÚÐ-SÐÐ
­…ÚÐ-YÐÐ
­]ÚÐ-BÐÐ
­‘ÚÐ-ÐÐ
­“ÚÐ-ZÐÐ
­”ÚÐ-[ÐÐ
­•ÚÐ-\ÐÐ
­›ÚÐ-]ÐÐ
­œÚÐ-^ÐÐ
­ ÚÐ-_ÐÐ
­¡ÚÐ-`ÐÐ
­ÚÐ-'ÐÐ
­£ÚÐ-AÐÐ
­–ÚÐ-aÐÐ
­®ÚÐ-bÐÐ
­¯ÚÐ-cÐÐ
­°ÚÐ-AÐÐ
­—ÚÐ-dÐÐ
­˜ÚÐ-eÐÐ
­¥ÚÐ-fÐÐ
­©ÚÐ-gÐÐ
­ªÚÐ-hÐÐ
­¨ÚÐ-iÐÐ
­­ÚÐ-YÐÐ
­«ÚÐ-AÐÐ
­×ÚÐ-jÐÐ
­ÚÚÐ-kÐÐ
­ÛÚÐ-lÐÐ
­ÕÚÐ-AÐÐ
­ÈÚÐ-mÐÐ
­   ÚÐ-ÐÐ
­
7
ÚÐ-nÐÐ
­ÚÐ-oÐÐ
­*ÚÐ-pÐÐ
­+ÚÐ-qÐÐ
­,ÚÐ-rÐÐ
­-ÚÐ-sÐÐ
­.ÚÐ-tÐÐ
­)ÚÐ-uÐÐ
­ÚÐ-'ÐÐ
­ÔÚÐ-AÐÐ
­êÚÐ-ÐÐ
­ÞÚÐ-vÐÐ
­àÚÐ-wÐÐ
­áÚÐ-kÐÐ
­âÚÐ-lÐÐ
­ãÚÐ-AÐÐ
­äÚÐ-mÐÐ
­åÚÐ-ÐÐ
­æÚÐ-nÐÐ
­ÚÐ-oÐÐ
­$ÚÐ-pÐÐ
­%ÚÐ-xÐÐ
­&ÚÐ-rÐÐ
­'ÚÐ-sÐÐ
­(ÚÐ-tÐÐ
­#ÚÐ-VÐÐ
­ÚÐ-'ÐÐ
­ÚÐ-AÐÐ
­¸ÚÐ-ÐÐ
­ßÚÐ-AÐÐ
­™ÚÐ-yÐÐ
­íÚÐ-zÐÐ
­îÚÐ-kÐÐ
­ïÚÐ-lÐÐ
­ðÚÐ-AÐÐ
­ñÚÐ-mÐÐ
­
ÚÐ-ÐÐ
­ÚÐ-nÐÐ
­ÚÐ-oÐÐ
­ÚÐ-pÐÐ
­ÚÐ-{ÐÐ
­ÚÐ-rÐÐ
­ÚÐ-sÐÐ
­ ÚÐ-tÐÐ
­ÚÐ-VÐÐ
­ÚÐ-'ÐÐ
­óÚÐ-AÐÐ
­ëÚÐ-ÐÐ
­ìÚÐ-ÐÐ
­ºÚÐ-|ÐÐ
­øÚÐ-}ÐÐ
­ùÚÐ-kÐÐ
­úÚÐ-lÐÐ
­ûÚÐ-AÐÐ
­üÚÐ-mÐÐ
­ÚÐ-ÐÐ
­ÚÐ-nÐÐ
­ÚÐ-oÐÐ
­ÚÐ-pÐÐ
­ÚÐ-~ÐÐ
­ÚÐ-rÐÐ
­ÚÐ-sÐÐ
­ÚÐ-SÐÐ
­ÚÐ-'ÐÐ
­þÚÐ-AÐÐ
­÷ÚÐ-ÐÐ
­šÚÐ-ÐÐ
­ÚÐ-ÐÐ
­ÚÐ-ÐÐ
­ÚÐ-ÐÐ
­ÚÐ-€ÐÐ
­’ÚÐ-BÐÐ
­üÚÐ-JÐÐ
­þÚÐ-ÐÐ
­ÚÐ-‚ÐÐ
­ÚÐ-ƒÐÐ
­ÚÐ-‚ÐÐ
­RÚÐ-„ÐÐ
­ ÚÐ-‚ÐÐ
­UÚÐ-…ÐÐ
­!ÚÐ-‚ÐÐ
­WÚÐ-†ÐÐ
­"ÚÐ-‚ÐÐ
­[ÚÐ-‡ÐÐ
­#ÚÐ-‚ÐÐ
­   ÚÐ-ˆÐÐ
­+ÚÐ-ÐÐ
­,ÚÐ-‰ÐÐ
­gÚÐ-ÐÐ
­CÚÐ-ŠÐÐ
­DÚÐ-‹ÐÐ
­EÚÐ-ŒÐÐ
­hÚÐ-ÐÐ
­-ÚÐ-ÐÐ
­.ÚÐ-ÐÐ
­ÚÐ-ÐÐ
­fÚÐ-ŽÐÐ
­ÚÐ-ÐÐ
­ÚÐ-ÐÐ
­(ÚÐ-ÐÐ
­ÚÐ-ÐÐ
­ÚÐ-ÐÐ
­ÚÐ-‘ÐÐ
­ÚÐ-ÐÐ
­ÚÐ-’ÐÐ
­ÚÐ-“ÐÐ
­ÚÐ-ÐÐ
­oÚÐ-ÐÐ
­lÚÐ-ÐÐ
­kÚÐ-ÐÐ
­eÚÐ-ÐÐ
­dÚÐ-Д•Ð   E
8
-ÐÐ
­/ÚÐ-–ÐÐ
­0ÚÐ-—ÐÐ
­1ÚÐ-˜ÐÐ
­2ÚÐ-™ÐÐ
­3ÚÐ-šÐÐ
­4ÚÐ-›ÐÐ
­5ÚÐ-ÐÐ
­6ÚÐ-œÐÐ
­7ÚÐ-ÐÐ
­8ÚÐ-ÐÐ
­9ÚÐ-ÐÐ
­:ÚÐ-žÐÐ
­HÚÐ-ÐÐ
­IÚÐ-ÐÐ
­JÚÐ-ŸÐÐ
­¿ÚÐ- ÐÐ
­¾ÚÐ-ÐÐ
­´ÚÐ-¡ÐÐ
­LÚÐ-¢ÐÐ
­MÚÐ-£ÐÐ
­TÚÐ-¤ÐÐ
­NÚÐ-¥ÐÐ
­OÚÐ-¦ÐÐ
­PÚÐ-§ÐÐ
­QÚÐ-¨ÐÐ
­RÚÐ-©ÐÐ
­UÚÐ-ªÐÐ
­VÚÐ-«ÐÐ
­XÚÐ-¬ÐÐ
­YÚÐ-­ÐÐ
­³ÚÐ-®ÐÐ
­žÚÐ-ÐÐ
­ZÚÐ-¯ÐÐ
­²ÚÐ-°ÐÐ
­ŸÚÐ-±ÐÐ
­±ÚÐ-²ÐÐ
­ØÚÐ-³ÐÐ
­ÙÚÐ-´ÐÐ
­ÃÚÐ-ÐÐ
­WÚÐ-µÐÐ
­ÄÚÐ-ÐÐ
­SÚÐ-ÐÐ
­;ÚÐ-ÐÐ
­<ÚÐ-™ÐÐ
­ÚÐ-ж-·и¹-º»¼н¾­