- Home /
Score/Points when player kills enemy (multiplayer)
Hi, im making a multiplayer first person shooter and I wanna know if and how I can add points to the person who killed the enemy. I have looked this up and people have said to make a static var for score and when the enemy dies just add a point from the enemies die function. I cannot use it because this is multiplayer and everyone will get a point. I am using raycast by the way. I thought that maybe that the person you shoot sends back a message saying where it got it and whether or not they died? Any ideas? Thanks in advance!
PS- If you could also tell me how to add the points the player is getting to the screen (GUI) of the player and have the points fade in and out of the screen?
PSS - If you can also tell me or explain how I can save the player info and levels on a database or something I would appreciate it.
Answer by Aspirer · Nov 14, 2013 at 12:02 AM
This is very basic code, nothing fancy, but it works perfectly for me:
private static int playerKills = 0; //Variable tracking playerKills
public static int PlayerKills { //Related properties to access playerKills
set{playerKills = value;}
get{return playerKills;}
}
Then, on an enemies death, have the dying script call
GUIController.PlayerKills += 1;
In your case, you would have to add a little. When a collision is made, the collision info stores various info. I believe it saves the direction of the impact (where it came from), shoot a RayCast back in that direction. Whichever player it collides with would be the one that sent the fatal shot. Use that RayCastHit info to add a point score to that player.
Does it shoot it back automatically or do I add that in. Also GUIController would be?