arms rotated incorrectly

Topics regarding Scripting with Reality Factory
Post Reply
User avatar
darksmaster923
Posts: 1857
Joined: Wed Jan 03, 2007 10:32 pm
Location: Huntington Beach, California, USA
Contact:

arms rotated incorrectly

Post by darksmaster923 » Tue Apr 08, 2008 2:35 am

hey guys, i have been working on my game. for some reason tho, the arms are rotated 90 degrees to the left. the gun shows up at the correct angle, but the arms do not. also, after reloading, the weapon doesnt shoot.
full of ugly hacks i know
code:

Code: Select all

{
	offsetX			[-2]
	offsetY			[-5]
	offsetZ			[10]
	offsettemp		[0]
	camerapitch		[0]
	camerapitchtemp		[0]
	reloaded		[false]
	bullets			[0]
	spare			[0]
	type			[null]
	spread			[0]
	firetime		[0]
	reloadtimer		[0]

	DAMAGEATTRIBUTE		[hp]
	CURRENTWEAPON		[0]
	WEAPONTOCHANGE		[null]

	dryfire			[weapon\dry.wav]
	fired			[false]


	//SOCOM
	SOCOM			[socom]
	SOCOMCLIP		[12]
	SOCOMAMMO		[12]
	SOCOMSPREAD		[30]
	SOCOMTYPE		[45acp]
	SOCOMARM		[socom_arm]
	SOCOMFIRE		[socom_fire]
	SOCOMRUN		[socom_run]
	SOCOMIDLE		[socom_idle]
	SOCOMRELOAD		[socom_reload]
	SOCOMSHOT		[weapon/socom.wav]

	//P90
	P90CLIP			[50]
	P90AMMO			[50]
	P90SPREAD		[25]

	//M16
	M16CLIP			[30]
	M16AMMO			[30]
	M16SPREAD		[10]

	//M9
	M9CLIP			[8]
	M9AMMO			[8]
	M9SPREAD		[50]

	//M82
	M82CLIP			[10]
	M82AMMO			[10]
	M82SPREAD		[4]

	//RAILGUN
	RAILGUNCLIP		[1]
	RAILGUNFIRED		[false]
	RAILGUNSPREAD		[0]

	//GAUSSRIFLE
	GAUSSRIFLECLIP		[20]
	GAUSSRIFLEAMMO		[20]
	GAUSSRIFLESPREAD	[2]

	//GAUSSSNIPER
	GAUSSSNIPERCLIP		[5]
	GAUSSSNIPERAMMO		[5]
	GAUSSSNIPERSPREAD	[2]


	Spawn[ ()
	{
		Console(true);
		Gravity(false);
		SetNoCollision();
		LowLevel("setup");
	} ]


	setup[ ()	//main func
	{
		self.yaw_speed = 1000;
		self.pitch_speed = 1000;
		//debug(reloadtimer);
		pos();
		fire();
		setkeys();
		//SetAttribute("ammo", bullets, "Player");
		if(self.key_pressed = 1)
		{
			CURRENTWEAPON = 1;	// Weapon is now socom
			AnimateHold(SOCOMARM);
			ActivateHudElement("45acp", true);
			HighLevel("Changeweapon");
			
		}
		if(self.key_pressed = 2)
		{
			if(GetAttribute("p90", "Player") > 0)
			{
				CURRENTWEAPON = 2;	// Weapon is now p90
				HighLevel("Changeweapon");
			}
		}
		if(self.key_pressed = 3)
		{
			if(GetAttribute("m16", "Player") > 0)
			{
				CURRENTWEAPON = 3;	// Weapon is now m16
				HighLevel("Changeweapon");
			}
		}
		if(self.key_pressed = 4)
		{
			if(GetAttribute("hasten", "Player") > 0)
			{
				CURRENTWEAPON = 4;	// Weapon is now m9
				HighLevel("Changeweapon");
			}
		}
		if(self.key_pressed = 5)
		{
			if(GetAttribute("m82", "Player") > 0)
			{
				CURRENTWEAPON = 5;	// Weapon is now m82
				HighLevel("Changeweapon");
			}
		}
		if(self.key_pressed = 6)
		{
			if(GetAttribute("railgun", "Player") > 0)
			{
				CURRENTWEAPON = 6;	// Weapon is now railgun
				HighLevel("Changeweapon");
			}
		}
		if(self.key_pressed = 7)
		{
			if(GetAttribute("gaussrifle", "Player") > 0)
			{
				CURRENTWEAPON = 7;	// Weapon is now gauss rifle
				HighLevel("Changeweapon");
			}
		}
		if(self.key_pressed = 8)
		{
			if(GetAttribute("gausssniper", "Player") > 0)
			{
				CURRENTWEAPON = 8;	// Weapon is now gauss sniper rifle
				HighLevel("Changeweapon");
			}
		}
	} ]

	setkeys[ ()	//clears var
	{
		if(reloaded = false)
		{
			if(self.lbutton_pressed = false and (IsKeyDown(17) = false))
			{
				fired = false;
				reloaded = false;
			}
		}
		if(IsKeyDown(17) and (reloaded = false) and (fired = false))
		{
			reload();
			reloaded = true;
			fired = true;
		}
	} ]

	pos[ ()		//setup position for gun
	{
		camerapitchtemp = self.camera_pitch*10;
		camerapitch = self.camera_pitch*11;	//for Z
		if(GetEventState("crouch") = false)
		{
			PositionToPawn("player",offsetX,71+offsetY+camerapitchtemp,offsetZ+camerapitch,true,false);	// setup angles and pos
		}
		else
		{
			PositionToPawn("player",offsetX,36+offsetY+camerapitchtemp,offsetZ+camerapitch,true,false);	// setup angles and pos
		}
		self.ideal_yaw = self.player_yaw;
		ChangeYaw(); 

		self.ideal_pitch = self.camera_pitch;	
		ChangePitch();
	} ]

	Changeweapon[ ()	// change weapon models
	{
		if(CURRENTWEAPON = 1)
		{
			SetWeapon(SOCOM);	//switch to socom
			bullets = SOCOMCLIP;
			spread = SOCOMSPREAD;
			SetAttribute("ammo", SOCOMCLIP,"Player");
			
			LowLevel("setup");
		}
	} ]

	fire[ ()		//shoot and call reload
	{
		if(CURRENTWEAPON = 1)
		{
			if(self.lbutton_pressed and (fired = false) and (reloaded = false))
			{
				if(SOCOMCLIP > 0)
				{
					SetTargetPoint(random(-SOCOMSPREAD,SOCOMSPREAD), random(-SOCOMSPREAD,SOCOMSPREAD),1000);	//set the spot where to fire
					FireProjectile(SOCOMTYPE, "Gun", 1, 1, -10, DAMAGEATTRIBUTE);	//shoot
					AnimateHold(SOCOMFIRE);
					PlaySound(SOCOMSHOT);
					SOCOMCLIP = SOCOMCLIP - 1;
					TiltCamera(random(-0.014, -0.03));
					RotateEntity("player", 0, random(2,-2), 0);
					SetAttribute("ammo", SOCOMCLIP, "Player");
					AddExplosion("handgun", "Gun", 1, 1, -10); 
					fired = true;
				}
				else
				{
					reload();	//call reload func
					reloaded = true;
					fired = true;
				}
			}	
		}
	} ]

		
	reload[ ()
	{
		if(CURRENTWEAPON = 1)
		{
			if(GetAttribute("45acp", "Player") < (SOCOMAMMO - SOCOMCLIP))
			{
				PlaySound("weapon/handgun_reload.wav");
				AnimateHold(SOCOMRELOAD);
				SOCOMCLIP = SOCOMCLIP + GetAttribute("45acp", "Player");
				SetAttribute("45acp", 0, "Player");
				reloaded = false;
			}
			else
			{
				PlaySound("weapon/handgun_reload.wav");
				AnimateHold(SOCOMRELOAD);
				ModifyAttribute("45acp",SOCOMCLIP-SOCOMAMMO,"Player");
				SOCOMCLIP = 12;
				SetAttribute("ammo", SOCOMCLIP, "Player");
				reloaded = false;
			}
		}
	} ]
}
Herp derp.

Post Reply