arms rotated incorrectly
Posted: 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:
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;
}
}
} ]
}