public static MyCharacter SpawnAgent( ulong steamId, string name, Color color, MatrixD startPosition, long identityId ) { var identityBuilder = new MyObjectBuilder_Identity { DisplayName = name, ColorMask = color.ToVector3(), IdentityId = identityId, }; var identity = MySession.Static.Players.CreateNewIdentity(identityBuilder); var character = MyCharacter.CreateCharacter( startPosition, Vector3.Zero, name, "", color, null, identityId: identityId); var client = new MyNetworkClient(steamId, name); //client.SetInstanceProperty("IsLocal", true); var player = MySession.Static.Players.CreateNewPlayer( identity: identity, steamClient: client, playerName: name, realPlayer: true ); var characterController = new MyEntityController(player); characterController.TakeControl(character); return(player.Character); }
public static MyCharacter SpawnAgent(ulong steamId, string name, Color color, MatrixD startPosition, long identityId = 1000) { var character = MyCharacter.CreateCharacter( startPosition, Vector3.Zero, name, "", color, null, identityId: identityId); character.SwitchJetpack(); var playerId = new MyPlayer.PlayerId(steamId); var identityBuilder = new MyObjectBuilder_Identity { DisplayName = name, CharacterEntityId = character.EntityId, ColorMask = color.ToVector3() }; var identity = new MyAgentIdentity().CreateNewIdentity(identityBuilder); var myPlayer = new MyPlayer(Sync.Clients.LocalClient, playerId) { Identity = identity }; var characterController = new MyEntityController(myPlayer); characterController.TakeControl(character); return(character); }
public MyObjectBuilder_Identity GetObjectBuilder() { var objectBuilder = new MyObjectBuilder_Identity(); objectBuilder.IdentityId = IdentityId; objectBuilder.DisplayName = DisplayName; objectBuilder.CharacterEntityId = Character == null ? 0 : Character.EntityId; objectBuilder.Model = Model; objectBuilder.ColorMask = ColorMask; return objectBuilder; }
public MyObjectBuilder_Identity GetObjectBuilder() { var objectBuilder = new MyObjectBuilder_Identity(); objectBuilder.IdentityId = IdentityId; objectBuilder.DisplayName = DisplayName; objectBuilder.CharacterEntityId = Character == null ? 0 : Character.EntityId; objectBuilder.Model = Model; objectBuilder.ColorMask = ColorMask; return(objectBuilder); }
public MyObjectBuilder_Identity GetObjectBuilder() { var objectBuilder = new MyObjectBuilder_Identity(); objectBuilder.IdentityId = IdentityId; objectBuilder.DisplayName = DisplayName; objectBuilder.CharacterEntityId = Character == null ? 0 : Character.EntityId; objectBuilder.Model = Model; objectBuilder.ColorMask = ColorMask; objectBuilder.BlockLimitModifier = BlockLimitModifier; objectBuilder.LastLoginTime = LastLoginTime; return(objectBuilder); }
private MyIdentity(MyObjectBuilder_Identity objectBuilder) { Init(objectBuilder.DisplayName, MyEntityIdentifier.FixObsoleteIdentityType(objectBuilder.IdentityId), objectBuilder.Model, objectBuilder.BlockLimitModifier); MyEntityIdentifier.MarkIdUsed(IdentityId); if (objectBuilder.ColorMask.HasValue) ColorMask = objectBuilder.ColorMask; IsDead = true; MyEntity character; MyEntities.TryGetEntityById(objectBuilder.CharacterEntityId, out character); if (character is MyCharacter) Character = character as MyCharacter; }
private MyIdentity(MyObjectBuilder_Identity objectBuilder) { Init(objectBuilder.DisplayName, MyEntityIdentifier.FixObsoleteIdentityType(objectBuilder.IdentityId), objectBuilder.Model, objectBuilder.BlockLimitModifier); MyEntityIdentifier.MarkIdUsed(IdentityId); if (objectBuilder.ColorMask.HasValue) { ColorMask = objectBuilder.ColorMask; } IsDead = true; MyEntity character; MyEntities.TryGetEntityById(objectBuilder.CharacterEntityId, out character); if (character is MyCharacter) { Character = character as MyCharacter; } }
public virtual MyIdentity CreateNewIdentity(MyObjectBuilder_Identity objectBuilder) { return(new MyIdentity(objectBuilder)); }
public virtual MyIdentity CreateNewIdentity(MyObjectBuilder_Identity objectBuilder) { return new MyIdentity(objectBuilder); }
public override MyIdentity CreateNewIdentity(MyObjectBuilder_Identity objectBuilder) { bool obsoleteNpc = false; MyEntityIdentifier.ID_OBJECT_TYPE objectType = MyEntityIdentifier.GetIdObjectType(objectBuilder.IdentityId); if (objectType == MyEntityIdentifier.ID_OBJECT_TYPE.NPC || objectType == MyEntityIdentifier.ID_OBJECT_TYPE.SPAWN_GROUP) obsoleteNpc = true; MyIdentity identity = base.CreateNewIdentity(objectBuilder); AfterCreateIdentity(identity, obsoleteNpc); return identity; }
public override MyIdentity CreateNewIdentity(MyObjectBuilder_Identity objectBuilder) { return(base.CreateNewIdentity(objectBuilder)); }