Fixed bad rotation on monsters created by WorldGenerator.
Moved SetFacingRotation() from WorldObject into Actor.
Refactored quaternion facing angle math into helper function:
Quaternion.FacingRotation()
Merge commit '3e59daf632434d2cdd70e35fccfd8bb9d800d76c'
Fixing Conversation Issues:
//Commented out the code were when an Actor had only 1 conversation available, the conversation would be triggerd instantly onTargeted, still, there are conversations that indeed should be played onTargeted and only on first interaction, but this kind of conversations ain't handled yet by Mooege.

//There is an issue with GetActorbySNO function sometimes returning the wrong SNOId of an actor, instead I used player.selectedNPC when dealing with InteractiveNPC, this way we correctly get the selected npc snoid and can form the Conversation packet with the correct values. <- This fixes some conversations were the sound was barely hearable because of wrong field values in the conversation packet.
Minor Refactoring of some code
Modified Cain implementation:
Conversations must not be hardcoded into an Actor, Actors get their conversationList loaded automatically.
Removing some hardcoded field values I was using for testing purposes.
+Handling AmbientGossip Conversations: If an AmbientGossip conversation its found within the actor conversations collection it will play onTargeted and wont display the Menu.

//Somehow we are missing Conversations in some actors, don't know if its because they aint really in the conversationList and they are triggered using some kind of script or theres something wrong while adding the conversations to the actor collection.

+Fixed the problem were you could clic on the quest giver actor and it would allow you to select the quest again, now the quest giver will become operable once you finish the quest.

It'd be nice if someone takes a look at RevealActorsToPlayer() @ Player.cs or anywhere the Actors are spawned, because having all this incorrect spawned actors with duplicates and such just bring issues along.
Modified Conversation Type handling, using the proper Type call instead of string.
Added Logging for ConversationList loading, there are MANY conversation SNOId's that loads into Actors but actually theres no data to play them, I don't know how to properly filter this.
Modified Conversation Type handling, using the proper Type call inste…
…ad of string.

Added Logging for ConversationList loading, there are MANY conversation SNOId's that loads into Actors but actually theres no data to play them, I don't know how to properly filter this.
test
Reverting
Tiny code cleanup. (reverse-merged from commit a2d0d010c9fb49e67c5d2b723e863111a3201e61)
Merge commit 'a2d0d010c9fb49e67c5d2b723e863111a3201e61'

Conflicts:
	src/Mooege/Core/GS/Players/Equipment.cs
	src/Mooege/Core/GS/Players/Player.cs
	src/Mooege/Net/MooNet/MooNetBuffer.cs
	src/Mooege/Net/MooNet/MooNetClient.cs
	src/Mooege/Net/MooNet/MooNetRouter.cs
	src/Mooege/Net/MooNet/Packets/PacketIn.cs
Merge commit '98906f410177bd316f9bd488d3e3e000ec3e3a9a'
Add client.AuthenticationComplete(); when auth fails because of invalid credentials, so the client gets a proper message instead of waiting for a timeout.
Adding possibility to enter absolute path to Storage-Root in config.ini
Fixing my DB-Manager Root-Patch for working on unixoid Systems
Merge remote-tracking branch 'remotes/upstream/master'
Merge pull request #509 from weltmeyer/master

Small fixes 
Download MPQs into correct folder structure
Add client.AuthenticationComplete(); when auth fails because of invalid credentials, so the client gets a proper message instead of waiting for a timeout.
Adding possibility to enter absolute path to Storage-Root in config.ini