| Home Page | Recent Changes | Preferences

CorDharel/BioRocket

BioRocket

This is my first little project, a BioRifle with Rockets as primary ammo. I did it, not perfect, but I want to add some more functions to make the mutator playable and unique.

Current status:

08.08.2003 I want to code some more functions for my BioRocket to get more into unrealscript.

- Old

04.04.03 I got it! Wasn't that hard as I thought. Perhaps I will post a tutorial about it.

02.04.03 When I pickup a BioRiflePickup, I get the rocket launcher :)

31.03.03 I got a Biorifle with the sound of the rocket launcher, but I can't see some projectiles.

My Classes I thought I have to use:

- BioRocketMut - For the mutator

- BioRocket - For the new weapon

- BioRocketPickup - For the pickup

- BioRocketFire - For the projectile fire


Here is my current code:

Class BioRocketMut:

class BioRocketMut extends Mutator
config(user);

function bool bCheckReplacement (Actor Other, out byte bSuperRelevant)
{

bSuperRelevant = 0;

if ( xWeaponBase(Other) != None )
        {
        if ( xWeaponBase(Other).WeaponType == Class'BioRifle')
            xWeaponBase(Other).WeaponType = Class'BioRocket';
            return true;
        }

else if ( WeaponPickup(Other) != None )
{
 if ( string(Other.Class) ~= "XWeapons.BioRiflePickup" )
  ReplaceWith( Other, "CorPackage.BioRocketPickup");
  return true;
}
else
    return true;

return false;
}

defaultproperties
{
    GroupName="BioRocket"
    FriendlyName="BioRocket"
    Description="Replaces all BioRifles with rocket Shooting BioRifle"
}

Class BioRocket

class BioRocket extends RocketLauncher config(user);

defaultproperties
{
     PickupClass=Class'CorPackage.BioRocketPickup'
     ItemName="BioRocket"
}

Class BioRocketPickup

class BioRocketPickup extends UTWeaponPickup;

static function StaticPrecache(LevelInfo L)
{
    L.AddPrecacheMaterial(Texture'XEffects.xbiosplat2');
    L.AddPrecacheMaterial(Texture'XEffects.xbiosplat');
    L.AddPrecacheMaterial(Texture'XGameShaders.bio_flash');
    L.AddPrecacheStaticMesh(StaticMesh'WeaponStaticMesh.BioRiflePickup');
}

simulated function UpdatePrecacheMaterials()
{
    Level.AddPrecacheMaterial(Texture'XEffects.xbiosplat2');
    Level.AddPrecacheMaterial(Texture'XEffects.xbiosplat');
    Level.AddPrecacheMaterial(Texture'XGameShaders.bio_flash');
}

defaultproperties
{
     MaxDesireability=0.750000
     InventoryType=class'CorPackage.BioRocket'
     PickupMessage="You got the BioRocket"
     PickupSound=Sound'PickupSounds.FlakCannonPickup'
     PickupForce="FlakCannonPickup"
     DrawType=DT_StaticMesh
     StaticMesh=StaticMesh'WeaponStaticMesh.BioRiflePickup'
     DrawScale=0.700000
}

Class BioRocketFire

class BioRocketFire extends ProjectileFire;

function PlayFireEnd()
{
}

function InitEffects()
{
    Super.InitEffects();
    if ( FlashEmitter != None )
        Weapon.AttachToBone(FlashEmitter, 'tip');
}

function Projectile SpawnProjectile(Vector Start, Rotator Dir)
{
    local Projectile p;

    p = RocketLauncher(Weapon).SpawnProjectile(Start, Dir);
    if ( p != None )
        p.Damage *= DamageAtten;
    return p;
}

defaultproperties
{
     ProjSpawnOffset=(X=25.000000,Y=6.000000,Z=-6.000000)
     TweenTime=0.000000
     FireSound=SoundGroup'WeaponSounds.RocketLauncher.RocketLauncherFire'
     FireForce="BioRocketFire"
     FireRate=0.900000
     AmmoClass=Class'XWeapons.RocketAmmo'
     AmmoPerFire=1
     ShakeRotTime=2.000000
     ShakeOffsetMag=(X=-20.000000)
     ShakeOffsetRate=(X=-1000.000000)
     ShakeOffsetTime=2.000000
     ProjectileClass=Class'XWeapons.RocketProj'
     BotRefireRate=0.500000
     WarnTargetPct=0.900000
     bSplashDamage=True
     bSplashJump=True
     bRecommendSplashDamage=True
     FlashEmitterClass=Class'XEffects.RocketMuzFlash1st'
}

The Unreal Engine Documentation Site

Wiki Community

Topic Categories

Image Uploads

Random Page

Recent Changes

Offline Wiki

Unreal Engine

Console Commands

Terminology

Mapping Topics

Mapping Lessons

UnrealEd Interface

Questions&Answers

Scripting Topics

Scripting Lessons

Making Mods

Class Tree

Questions&Answers

Modeling Topics

Questions&Answers

Log In