Making something SOLID_NOT for teammates..?
Moderator: InsideQC Admins
4 posts
• Page 1 of 1
Making something SOLID_NOT for teammates..?
Hi all,
Is is possible to have a Sentry Gun (QW TF) which is solid for the enemy, but NOT solid for teammates?
A conditional 'solidity'?
thanks,
OneManClan
Is is possible to have a Sentry Gun (QW TF) which is solid for the enemy, but NOT solid for teammates?
A conditional 'solidity'?
thanks,
OneManClan
- OneManClan
- Posts: 243
- Joined: Sat Feb 28, 2009 2:38 pm
EXT_DIMENSION_SOLID can do it, requires FTE.
.float dimension_solid;
.float dimension_hit;
if the bits don't match, the other entity will be unhittable (by 'hit', I mean tracelines, traceboxes, movetypes will only hit/strike/get stopped by the dimensions/bits they can 'hit', by 'solid', I mean this is the set of dimensions which others can potentially find solid/hittable).
so use one dimension for a team.
these bits have no correlation to EXT_DIMENSION_SEEN and are completely independant, they merely work in an identical way. Probably you should use the same dimension values so as to avoid confusion if you do use both, but there's no requirement to do so.
.float dimension_solid;
.float dimension_hit;
if the bits don't match, the other entity will be unhittable (by 'hit', I mean tracelines, traceboxes, movetypes will only hit/strike/get stopped by the dimensions/bits they can 'hit', by 'solid', I mean this is the set of dimensions which others can potentially find solid/hittable).
so use one dimension for a team.
these bits have no correlation to EXT_DIMENSION_SEEN and are completely independant, they merely work in an identical way. Probably you should use the same dimension values so as to avoid confusion if you do use both, but there's no requirement to do so.
- Spike
- Posts: 2892
- Joined: Fri Nov 05, 2004 3:12 am
- Location: UK
Spike wrote:if the bits don't match, the other entity will be unhittable (by 'hit', I mean tracelines, traceboxes, movetypes will only hit/strike/get stopped by the dimensions/bits they can 'hit', by 'solid', I mean this is the set of dimensions which others can potentially find solid/hittable).
so use one dimension for a team.
Thanks Spike.
[EDIT: The issue I had w not being able to make the SG non_solid has been resolved]
I don't know if my grasp of your basic concept is correct:
- Make all Red players have dimension_hit A.
Make all Blue players have dimension_hit B.
Make all new Blue SGs have dimension_solid C.
Make all new Red SGs have dimension_solid D.
- A&C == 0
A&D == 1
B&C == 1
B&D == 0
C&C == 0
D&D == 0
- Make the Player who made the SG have dimension_hit E (?)
BUT: what if there are three teammates each with their own SGs, and we need them to only be able to touch their own.. !?
I'm gonna need help please, because my newbie brain is struggling with the implementation.
thanks
OMC
[EDIT: update: I made the SG non_solid via (For test purposes):
player.dimension_hit = 255 (default)
tesla.dimension_solid = 0
So it appears I misunderstood. The formula is:
if (dimension_hit & dimension_solid == 0 )
object is non solid / no contact]
- OneManClan
- Posts: 243
- Joined: Sat Feb 28, 2009 2:38 pm
if (self.dimension_hit & other.dimension_solid)
bprint("impact\n");
else
bprint("pass straight through\n");
bprint("impact\n");
else
bprint("pass straight through\n");
- Spike
- Posts: 2892
- Joined: Fri Nov 05, 2004 3:12 am
- Location: UK
4 posts
• Page 1 of 1
Who is online
Users browsing this forum: No registered users and 1 guest