View Single Post
  #44  
Unread 20th December, 2005, 05:03 PM
BLTicklemonster BLTicklemonster is offline
Holy Shit!!
 
Join Date: May 2004
Posts: 1,004
Default

Okay, the way I understand it so far, it's not just the HUD that is a problem with pure, but also the fact that the client touches the jet and becomes invisible, which pure doesn't appreciate at all.

IF those two are the only problems, then fixing the HUD is no big deal, and neither is invisibility.

There are perhaps a couple of ways out of this invisibility, imho, and I will share my thoughts on this in the hopes that someone who has more ability than I can take this and run with it.

First off, is the way invisibility is called in JetFighter.uc

Code:
var bool UserInvisible;

~~~

function SetUserInvisble(bool InvMode)
{
	If  ( InvMode == TRUE ) {
		Instigator.SetDisplayProperties(ERenderStyle.STY_Translucent, 
							 FireTexture'unrealshare.Belt_fx.Invis',
							 true,
							 true);
		UserInvisible = True;
	} else {
		Instigator.SetDefaultDisplayProperties();
		UserInvisible = False;
	}
	
}

~~~

	function ProcessTouch (Actor Other, Vector HitLocation)
	{
		if ( Other != instigator ) {
			SetUserInvisble(false);
			Instigator.bcollideworld = TRUE;
			Explode(HitLocation,Normal(HitLocation-Other.Location));
		}
	}
What if the actual UT_Invisibility.uc file in it's entireity were used instead? Would pure see invisibility called "natively" and leave it alone?

Maybe, maybe not.

Therefore...

How about not use invisibility at all, and make process touch turn the client's actor's mesh into the Qjet's mesh for the ride, and back into the original mesh upon eject? (for you perverts, that is what is referred to as EJECTIONSPECULATION, and of course, I'm way ahead of myself here, so it's PREMATURE EJECTIONSPECULATION. now stfu, we got work to do)

(don't expect me to put any code here, mkay?)

Maybe, maybe not.

Therefore...

What about not using invisibility at all, but use the Shrinker mutator instead?

That's what I did, and it works, but there's two problems.

1. it makes behindview look crappy. Therefore, I would imagine that any demos one might make would be horrendous. You see a tiny widdle fella in side the jet mesh.

2. I am still working on making the var bool into shrinker instead of just adding shrinker, because as it stands, it ejects me prematurely because of the following from GhandiGuidedJetFighter.uc

Code:
simulated function MoveUser() 
{	
	local GhandiJetLauncher GW;	

	if (Guider == None )
		return;	
	GW = GhandiJetLauncher(Guider.FindInventoryType(class'GhandiJetLauncher'));
	//GW.AmmoType.AmmoAmount = 0;
	If ( GW.Eject != 1 ) {
		if ( !userInvisible ) {
			SetUserInvisble(True);
		}
		Guider.Setlocation(Location);
		Guider.SetRotation(Rotation);
		Guider.DesiredRotation = Rotation;
		Guider.Velocity = Velocity;
		Guider.bCollideWorld = False;

		if ( lifespan < 6 ) {
			GW.FuelAlert();
		}
	} else {
		//Ejecting
		//Give the user time to get away
		SetUserInvisble(FALSE);
		Guider.bCollideWorld = True;
		GW.EndRide();
	}

}
If I can get that code at the beginning to reference the shrinker script instead of invisibility, perhaps like

Code:
var bool UserWeeWillyWinky;
or something, , then it would work right, I'm sure, as long as I changed all instances referred to previously (and in other places, if memory serves me) of invisibility to weewillywinky (actually, shrinker would make more sense).

I am presenting all this here because I still don't quite understand well enough to just spit all this out and say here you go (assuming that this is all that there is to it), and am hoping that perhaps these angles weren't thought of previously, and that some 1337 scripting God will hop on it and spit it out in like 5 minutes and we'll be done with it.

Of course I'd love to do it myself and claim all the credit, but that is selfish, and from what I hear, people are at wit's end wanting a fix.

So what are the chances that I'm right on this, and "whatcha gonna do 'bout it"?


(and please, do not say it can't be done until you try it. I've done 3 things already that I was told can't be done, the first of which was stopping the first helios hook with cshp because I refused to hear, "it can't be done" if nobody is trying)


(oh, thanks to tomcat, shadow stalker, and I can't remember the other guy's name, we had a skull session the other night when the part about using shrinker came up)

Last edited by BLTicklemonster : 20th December, 2005 at 05:07 PM.
Reply With Quote