Okay, this is caused because there are 2 versions of the gun when it is in hand: the 3rd person (seen by others), and the 1st person (seen by you).
The pickup is basically the 3rd person (at least it is for this).
So what we want, effectively, is to make the player see things on his screen, different to what others see. Yes?
Well, for that, we find the function that renders(draws) the gun as an image on the canvas (screen) for the
1st person.
- Code: Select all
simulated event RenderOverlays( canvas Canvas )
So when the function is called, we want the skin to be the 1st person skin (so it is rendered with the 1st person skin, for the 1st person view).
- Code: Select all
simulated event RenderOverlays( canvas Canvas )
{
//set 1st person skin here, before the function is called.
//called here:
Super.RenderOverlays( Canvas );
//set 3rd person skin here, because after you have drawn it on the players screen, it is fine for the player, and now you need to draw it on the other people's screen.
}
Also, in the MultiSkins[i] property of the weapon class, set the skins to the 3rd person ones (because it will be 3rd person when it is spawned).
I hope this is better, that I have explained my train of thought, and how I came to the solution, because I
hate it when people are like 'omg H0w d0 1 d0 this!!??11', and someone else just says 'here copy and paste this', then in effect, the noobie doesn't learn anything.