In a plugin Im developing people can spectate. However when a player fires a arrow and a spectator is in the way, The arrow jerks to a halt in midair. Regardless of the spectator being invisible. I could solve this by teleporting the arrow but then that goes into a range of stuff I don't like. Mainly I don't know how. So basically have a option for a player to be a viewpoint entity, Someone who can't have events fired on them, Can't be hit by explosions, enderpearls, arrows, etc. Pretty much someone who is no-clipping. Infact, If someone has a way to make the players no-clip without a client mod, I'm more then happy to hear it. But I don't want to be forced to modify craftbukkit itself.
Funny thing, When I made a suggestion in the suggestion tracker. It was closed for being in the wrong place as well.
@libraryaddict I think is good they could add this, since the server is the one who I think manages the arrow direction and target. But you can still do this by blocking the packets send to players about spectator player, so spectators will be totally invisible and arrows will go through them too. I haven't tested this anyway, if any advance I would like you to post it here I'm interested at this too
You mean that even if people is totally invisible (I have been told there is a hide players thing on Bukkit API already), arrows will still hit em if they are in the middle? I don't think so :/ but anyway I'm trying to ask someone that knows, if I get any info I will tell u "It untracks the player being hidden from those who can't see them. Doesn't affect arrow entitires AFAIK." as mbaxter told me. This is what the API function does, but he is not sure about arrows either or thats what I understood xD, sorry ;/
They should. As the server still checks the logic on where the arrow hits. the client wont see the arrow hitting the player though. Why shouldn't the player be hit by an arrow while they are invisible to another player? The player isn't made so it ignores collision, just invisible to a specific player or set of players.