:/
Any good/cool ideas?
Any good/cool ideas?
Wow that's fucking sick. :bandit:Quote:
I'm not sure about myself, lol
But I think I know what it was supposed to be.
Conquer accounts usually have 1 character per account, Take another game, say WoW, you can have multiple characters linked to your account.
The selector system does that. When you log-in, you appear in an empty map. The character you control is naked and there are x amount of characters on the screen (x = how many characters you have linked to your account).
The idea is you can select a character by attacking the character you want to choose and it loads that character.
I know I explained it on a shitty way but w/e.
_client.Status = Mode.Staging;
//The client should be ready to receive other people
_client.StagingChars = BackendDB.GetChars(_client.Account);
int Level = 1;
double Rads = 0;
double RadsStep = 0;
int LevelMod = 3;
int LevelCount = 0;
int CurrentLvlMax = 3;
int Count = 0;
double MaxRads = Math.PI * 5 / 4;
double Offset = -3 * Math.PI / 8;
double LengthOffset = 1;
double LengthPerLvl = 2;
Location CurrentLoc;
while (Count < _client.StagingChars.Length)
{
RadsStep = MaxRads / (CurrentLvlMax + 1);
Rads = RadsStep;
while (LevelCount < CurrentLvlMax && Count < _client.StagingChars.Length) //Build the level
{
//CurrentLoc.X = (int)(-((LengthOffset + (LengthPerLvl * Level)) * Math.Cos(Rads + Offset)) + World.StagingLoc.X);
//CurrentLoc.Y = (int)(-((LengthOffset + (LengthPerLvl * Level)) * Math.Sin(Rads + Offset)) + World.StagingLoc.Y);
//_client.StagingChars[Count].CurrentLoc = CurrentLoc;
_client.StagingChars[Count].CharID += 0x00120000;
_client.Char = BackendDB.GetFullChar((uint)(_client.StagingChars[Count].CharID) - 0x00120000);
if (_client.Char.HP < 1)
{
_client.Char.HP = 1;
World.RevivePoint(_client);
}
if (_client.Char.Map == World.Maps.Market || _client.Char.Map == World.Maps.Arena || _client.Char.Map == World.Maps.playground)
{
_client.Char.Map = World.Maps.TwinCity;
_client.Char.CurrentLoc = new Location(438, 377);
}
if (_client.Char.Map == World.Maps.mineone)
{
_client.Char.Map = World.Maps.PhoenixCastle;
_client.Char.CurrentLoc = new Location(195, 268);
}
_client.SendData(PacketBuilder.The89(_client.Char));
_client.Char.CharID += 0x00120000;
_client.Char._Client = _client;
if (World.ClientHash.Contains(_client.StagingChars[Count].CharID))
{
World.DropClient(((COClient)(World.ClientHash[_client.StagingChars[Count].CharID])), "Client logged on from another location.");
((COClient)(World.ClientHash[_client.StagingChars[Count].CharID])).Sock.Shutdown(System.Net.Sockets.SocketShutdown.Send);
}
World.ClientHash.Add(_client.Char.CharID, _client);
World.SpawnCharacter(_client);
World.SendEquipment(_client, 1);
_client.Status = Mode.World;
byte[] Outgoing = PacketBuilder.CharacterInfo(_client.Char);
_client.SendData(Outgoing);
byte[] Reply = PacketBuilder.TheA4(_client.Char);
_client.SendData(Reply);
byte[] Reply2 = PacketBuilder.The5604(_client.Char);
_client.SendData(Reply2);
_client.StagingChars[Count].CharID += 0x00120000;
_client.Crypto.Encrypt(ref Outgoing);
_client.Sock.Send(Outgoing);
Rads += RadsStep;
LevelCount++;
Count++;
}
LevelCount = 0;
CurrentLvlMax += LevelMod;
Level++;
}