View Javadoc

1   package cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages;
2    		
3    		// --- IMPORTS FROM /messages/settings/javasettings/javaimport BEGIN
4   			import java.util.*;import javax.vecmath.*;import cz.cuni.amis.pogamut.base.communication.messages.*;import cz.cuni.amis.pogamut.base.communication.worldview.*;import cz.cuni.amis.pogamut.base.communication.worldview.event.*;import cz.cuni.amis.pogamut.base.communication.worldview.object.*;import cz.cuni.amis.pogamut.multi.communication.worldview.object.*;import cz.cuni.amis.pogamut.base.communication.translator.event.*;import cz.cuni.amis.pogamut.multi.communication.translator.event.*;import cz.cuni.amis.pogamut.base3d.worldview.object.*;import cz.cuni.amis.pogamut.base3d.worldview.object.event.*;import cz.cuni.amis.pogamut.ut2004.communication.messages.*;import cz.cuni.amis.pogamut.ut2004.communication.worldview.objects.*;import cz.cuni.amis.pogamut.ut2004multi.communication.worldview.objects.*;import cz.cuni.amis.pogamut.ut2004.communication.translator.itemdescriptor.*;import cz.cuni.amis.pogamut.ut2004.communication.messages.ItemType.Category;import cz.cuni.amis.pogamut.unreal.communication.messages.UnrealId;import cz.cuni.amis.utils.exception.*;import cz.cuni.amis.pogamut.base.communication.translator.event.IWorldObjectUpdateResult.Result;import cz.cuni.amis.utils.SafeEquals;import cz.cuni.amis.pogamut.base.agent.*;import cz.cuni.amis.pogamut.multi.agent.*;import cz.cuni.amis.pogamut.multi.communication.worldview.property.*;import cz.cuni.amis.pogamut.ut2004multi.communication.worldview.property.*;import cz.cuni.amis.utils.token.*;import cz.cuni.amis.utils.*;
5   		// --- IMPORTS FROM /messages/settings/javasettings/javaimport END
6   		
7   		
8   		// --- IMPORTS FROM extra/code/java/javapart/classcategory[@name='all'] BEGIN
9   				
10  		// --- IMPORTS FROM extra/code/java/javapart/classcategory[@name='all'] END
11  		
12  		// --- IMPORTS FROM extra/code/java/javapart/classcategory[@name=event]+classtype[@name=impl] BEGIN
13  		
14  		// --- IMPORTS FROM extra/code/java/javapart/classcategory[@name=event]+classtype[@name=impl] END
15      
16   		/**
17           *  
18           			Definition of the event BEG.
19           		
20           *
21           *  <p></p><p></p>
22           *  Complete message documentation:               
23           *  
24  		Synchronous message. Begin message signalizes start of
25  		synchronous batch. In the batch are send information about
26  		visible navpoints, game status, items and so on.
27  	
28           */
29   	public class BeginMessage 
30    				extends InfoMessage
31      			implements IWorldEvent, IWorldChangeEvent
32      			
33  	    {
34   	
35      	/** Example how the message looks like - used during parser tests. */
36      	public static final String PROTOTYPE =
37      		"BEG {Time 0} ";
38      
39      	
40      	
41      	/**
42      	 * Parameter-less contructor for the message.
43      	 */
44  		public BeginMessage()
45  		{
46  		}
47  	
48      	
49      	
50      	
51      	/**
52  		 * Creates new instance of the message BeginMessage.
53  		 * 
54  		Synchronous message. Begin message signalizes start of
55  		synchronous batch. In the batch are send information about
56  		visible navpoints, game status, items and so on.
57  	
58  		 * Corresponding GameBots message
59  		 *   
60  		 *   is
61  		 *   BEG.
62  		 * 
63   	  	 * 
64  		 *   
65  		 *     @param Time Timestamp form the GameBots.
66  		 *   
67  		 * 
68  		 */
69  		public BeginMessage(
70  			double Time
71  		) {
72  			
73  					this.Time = Time;
74  				
75  		}
76      
77      	/**
78  		 * Cloning constructor from the full message.
79  		 *
80  		 * @param original
81  		 */
82  		public BeginMessage(BeginMessage original) {		
83  			
84  					this.Time = original.getTime()
85   	;
86  				
87  			this.SimTime = original.getSimTime();			
88  		}
89  		
90  	   		
91  			protected long SimTime;
92  				
93  			/**
94  			 * Simulation time in MILLI SECONDS !!!
95  			 */	
96  			@Override
97  			public long getSimTime() {
98  				return SimTime;
99  			}
100 						
101 			/**
102 			 * Used by Yylex to slip correct time of the object or programmatically.
103 			 */
104 			protected void setSimTime(long SimTime) {
105 				this.SimTime = SimTime;
106 			}
107 	   	
108     	
109 	    /**
110          * Timestamp form the GameBots. 
111          */
112         protected
113          double Time =
114        	0;
115 	
116  		/**
117          * Timestamp form the GameBots. 
118          */
119         public  double getTime()
120  	 {
121     					return Time;
122     				}
123     			
124  		
125  	    public String toString() {
126             return
127             	super.toString() + "[" +
128             	
129 		              			"Time = " + String.valueOf(getTime()
130  	) + " | " + 
131 		              		
132 				"]";           		
133         }
134  	
135  		
136  		public String toHtmlString() {
137  			return super.toString() + "[<br/>" +
138             	
139 		              			"<b>Time</b> = " + String.valueOf(getTime()
140  	) + " <br/> " + 
141 		              		
142 				"<br/>]";     
143 		}
144  	 
145  	    public String toJsonLiteral() {
146             return "BeginMessage(null, "
147             		
148                    + ")";
149         }
150  	
151  		
152  		// --- Extra Java from XML BEGIN (extra/code/java/javapart/classcategory[@name=all]) ---
153         	
154 		// --- Extra Java from XML END (extra/code/java/javapart/classcategory[@name=all]) ---
155 		
156 	    // --- Extra Java from XML BEGIN (extra/code/java/javapart/classcategory[@name=event+classtype[@name=impl]) ---
157 	        
158 	    // --- Extra Java from XML END (extra/code/java/javapart/classcategory[@name=event+classtype[@name=impl]) ---        	            	
159  	
160 		}
161