@ -2,12 +2,17 @@ package engine.Dungeons;
				@@ -2,12 +2,17 @@ package engine.Dungeons;
					 
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					import  engine.Enum ;  
			
		
	
		
			
				
					import  engine.InterestManagement.WorldGrid ;  
			
		
	
		
			
				
					import  engine.gameManager.BuildingManager ;  
			
		
	
		
			
				
					import  engine.gameManager.PowersManager ;  
			
		
	
		
			
				
					import  engine.gameManager.ZoneManager ;  
			
		
	
		
			
				
					import  engine.math.Vector3fImmutable ;  
			
		
	
		
			
				
					import  engine.net.ByteBufferWriter ;  
			
		
	
		
			
				
					import  engine.objects.* ;  
			
		
	
		
			
				
					import  engine.powers.EffectsBase ;  
			
		
	
		
			
				
					import  engine.server.MBServerStatics ;  
			
		
	
		
			
				
					import  org.pmw.tinylog.Logger ;  
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					import  java.time.LocalDateTime ;  
			
		
	
		
			
				
					import  java.util.ArrayList ;  
			
		
	
		
			
				
					import  java.util.HashSet ;  
			
		
	
		
			
				
					
 
			
		
	
	
		
			
				
					
						
							
								 
						
						
							
								 
						
						
					 
				
				@ -58,4 +63,92 @@ public class Dungeon {
				@@ -58,4 +63,92 @@ public class Dungeon {
					 
			
		
	
		
			
				
					                eff . endEffect ( ) ;   
			
		
	
		
			
				
					        }   
			
		
	
		
			
				
					    }   
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					    public  static  void  serializeForClientMsgTeleport ( ByteBufferWriter  writer )  {   
			
		
	
		
			
				
					        Guild  rulingGuild  =  Guild . getErrantGuild ( ) ;   
			
		
	
		
			
				
					        Guild  rulingNation  =  Guild . getErrantGuild ( ) ;   
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					        Zone  zone  =  ZoneManager . getZoneByUUID ( 994 ) ;   
			
		
	
		
			
				
					        // Begin Serialzing soverign guild data
   
			
		
	
		
			
				
					        writer . putInt ( Enum . GameObjectType . Zone . ordinal ( ) ) ;   
			
		
	
		
			
				
					        writer . putInt ( 994 ) ;   
			
		
	
		
			
				
					        writer . putString ( "Whitehorn Citadel" ) ;   
			
		
	
		
			
				
					        writer . putInt ( rulingGuild . getObjectType ( ) . ordinal ( ) ) ;   
			
		
	
		
			
				
					        writer . putInt ( rulingGuild . getObjectUUID ( ) ) ;   
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					        writer . putString ( rulingGuild . getName ( ) ) ;   
			
		
	
		
			
				
					        writer . putString ( "" ) ;   
			
		
	
		
			
				
					        writer . putString ( rulingGuild . getLeadershipType ( ) ) ;   
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					        // Serialize guild ruler's name
   
			
		
	
		
			
				
					        // If tree is abandoned blank out the name
   
			
		
	
		
			
				
					        // to allow them a rename.
   
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					        writer . putString ( "" ) ;   
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					        writer . putInt ( rulingGuild . getCharter ( ) ) ;   
			
		
	
		
			
				
					        writer . putInt ( 0 ) ;  // always 00000000
   
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					        writer . put ( ( byte ) 0 ) ;   
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					        writer . put ( ( byte )  1 ) ;   
			
		
	
		
			
				
					        writer . put ( ( byte )  1 ) ;   // *** Refactor: What are these flags?
   
			
		
	
		
			
				
					        writer . put ( ( byte )  1 ) ;   
			
		
	
		
			
				
					        writer . put ( ( byte )  1 ) ;   
			
		
	
		
			
				
					        writer . put ( ( byte )  1 ) ;   
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					        GuildTag . _serializeForDisplay ( rulingGuild . getGuildTag ( ) ,  writer ) ;   
			
		
	
		
			
				
					        GuildTag . _serializeForDisplay ( rulingNation . getGuildTag ( ) ,  writer ) ;   
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					        writer . putInt ( 0 ) ; // TODO Implement description text
   
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					        writer . put ( ( byte )  1 ) ;   
			
		
	
		
			
				
					        writer . put ( ( byte )  0 ) ;   
			
		
	
		
			
				
					        writer . put ( ( byte )  1 ) ;   
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					        // Begin serializing nation guild info
   
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					        if  ( rulingNation . isEmptyGuild ( ) )  {   
			
		
	
		
			
				
					            writer . putInt ( rulingGuild . getObjectType ( ) . ordinal ( ) ) ;   
			
		
	
		
			
				
					            writer . putInt ( rulingGuild . getObjectUUID ( ) ) ;   
			
		
	
		
			
				
					        }  else  {   
			
		
	
		
			
				
					            writer . putInt ( rulingNation . getObjectType ( ) . ordinal ( ) ) ;   
			
		
	
		
			
				
					            writer . putInt ( rulingNation . getObjectUUID ( ) ) ;   
			
		
	
		
			
				
					        }   
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					        // Serialize nation name
   
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					        if  ( rulingNation . isEmptyGuild ( ) )   
			
		
	
		
			
				
					            writer . putString ( "None" ) ;   
			
		
	
		
			
				
					        else   
			
		
	
		
			
				
					            writer . putString ( rulingNation . getName ( ) ) ;   
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					        writer . putInt ( 1 ) ;   
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					        writer . putInt ( 0xFFFFFFFF ) ;   
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					        writer . putInt ( 0 ) ;   
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					        if  ( rulingNation . isEmptyGuild ( ) )   
			
		
	
		
			
				
					            writer . putString ( " " ) ;   
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					        writer . putLocalDateTime ( LocalDateTime . now ( ) ) ;   
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					        //location
   
			
		
	
		
			
				
					        Vector3fImmutable  loc  =  Vector3fImmutable . getRandomPointOnCircle ( BuildingManager . getBuilding ( 2827951 ) . loc , 30f ) ;   
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					        writer . putFloat ( loc . x ) ;   
			
		
	
		
			
				
					        writer . putFloat ( loc . y ) ;   
			
		
	
		
			
				
					        writer . putFloat ( loc . z ) ;   
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					        writer . putInt ( 0 ) ;   
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					        writer . put ( ( byte )  1 ) ;   
			
		
	
		
			
				
					        writer . put ( ( byte )  0 ) ;   
			
		
	
		
			
				
					        writer . putInt ( 0x64 ) ;   
			
		
	
		
			
				
					        writer . put ( ( byte )  0 ) ;   
			
		
	
		
			
				
					        writer . put ( ( byte )  0 ) ;   
			
		
	
		
			
				
					        writer . put ( ( byte )  0 ) ;   
			
		
	
		
			
				
					    }   
			
		
	
		
			
				
					}