
ChronoSeth wrote:+INVENTORY.UNTOSSABLE
A version much...ReedtheStrange wrote:GZdoom 1.5.6 doesn't recognize the flag. Which versions does it work on?ChronoSeth wrote:+INVENTORY.UNTOSSABLE
Actor XtBFGBall replaces BFGBall
{
PROJECTILE
+FORCEXYBILLBOARD
+EXPLODEONWATER
+BLOODSPLATTER
//+TELESTOMP
//-NOTELEPORT
RenderStyle Add
Alpha 0.75
//Radius 10
Radius 13
Height 8
//Height 10
Speed 25
Damage (0)
Decal "BFGLightning"
Obituary "$OB_MPBFG_BOOM"
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_PlaySound ("weapons/bfgloop", 6, 1, 1)
TNT1 A 0 A_SpawnItemEx ("XtBFGLaserSpawner", 0, 0, 0, 0, 0, 0, 0, SXF_TRANSFERPOINTERS)
BFGB AB 3 Bright
TNT1 A 0 A_SpawnItemEx ("XtBFGLaserSpawner", 0, 0, 0, 0, 0, 0, 0, SXF_TRANSFERPOINTERS)
BFGB CD 3 Bright
Loop
Death:
TNT1 A 0 A_StopSound (6)
TNT1 A 0 A_PlaySound ("weapons/bfgx", CHAN_BODY, 1, 0)
BFE1 A 4 Bright A_Explode (200, 256, 1, 1, 64)
BFE1 BCDEF 4 Bright
Stop
}
}
Actor XtBFGLaserSpawner
{
PROJECTILE
+SEEKERMISSILE
+THRUACTORS
+STEPMISSILE
Radius 1
Height 1
Speed 1
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_SeekerMissile (90, 90, SMF_LOOK|SMF_PRECISE, 256, 512)
TNT1 A 0 A_JumpIfTargetInLOS ("Railer", 0, JLOSF_PROJECTILE)
Stop
Railer:
TNT1 A 0 A_RearrangePointers (AAPTR_DEFAULT, AAPTR_DEFAULT, AAPTR_PLAYER_GETTARGET|AAPTR_TRACER, 4)
TNT1 A 0 A_FaceTracer
TNT1 A 0 A_CustomRailgun (20, 0, 0, 0, RGF_SILENT|RGF_NOPIERCING, 0, 0, "XtBFGLaserPuff", 0, 0, 0, 0, 1.0, 1.0, "XtBFGLaser")
Stop
}
}
Actor XtBFGLaser
{
+NOBLOCKMAP
+NOTELEPORT
+NOGRAVITY
RenderStyle Add
Alpha 0.25
Scale 0.5
Height 1
Radius 1
States
{
Spawn:
BFGS ABCDE 4 Bright
Stop
}
}
Actor XtBFGLaserPuff
{
+NOBLOCKMAP
+NOTELEPORT
+NOGRAVITY
+ALWAYSPUFF
+NOEXTREMEDEATH
Alpha 0.25
Scale 0.5
States
{
Spawn:
TFOG BABACBCBDCDCDEDEDFEFE 1 Bright
Stop
}
}
Actor XtSpiderBFGBall : XtBFGBall
{
FastSpeed 35
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_PlaySound ("weapons/bfgloop", 6, 1, 1)
TNT1 A 0 A_SpawnItemEx ("XtSpiderBFGLaserSpawner", 0, 0, 0, 0, 0, 0, 0, SXF_TRANSFERPOINTERS)
BFGB AB 3 Bright
TNT1 A 0 A_SpawnItemEx ("XtSpiderBFGLaserSpawner", 0, 0, 0, 0, 0, 0, 0, SXF_TRANSFERPOINTERS)
BFGB CD 3 Bright
Loop
}
}
Actor XtSpiderBFGLaserSpawner : XtBFGLaserSpawner
{
States
{
Railer:
TNT1 A 0 A_FaceTracer
TNT1 A 0 A_CustomRailgun (20, 0, 0, 0, RGF_SILENT|RGF_NOPIERCING, 0, 0, "XtBFGLaserPuff", 0, 0, 0, 0, 1.0, 1.0, "XtBFGLaser")
Stop
}
}
InInventory InfectionMeter,1
{
DrawBar "INFBAR1","INFBAR2",InfectionMeter,vertical,30,10;
}sprite INFBAR1,64,78
{
XScale 4.0
YScale 4.0
Offset 0,0
Patch INFBARA,0,0
}
sprite INFBAR2,64,78
{
XScale 4.0
YScale 4.0
Offset 0,0
Patch INFBARB,0,0
}function void Game_InfectPlayer(int playerTID)
{
ThingSound(playerTID,"human/infected",127);
GiveActorInventory(playerTID,"PowerTransformation",1);
GiveActorInventory(playerTID,"TransformingSpeed",1);
GiveActorInventory(playerTID,"InfectionHealthRestoring",1);
ACS_ExecuteAlways(820,0,playerTID,PMS_TRANSFORMING);
Human[playerTID-START_ID]=false;
Infected[playerTID-START_ID]=true;
Game_PlayerDead(playerTID);
Game_DropInventory(playerTID);
LastInfectedLeft=false;
//Player_SetTeam(1);
}2 - How do I make sin(30) return 0.5? It's returning some odd values that I can't understand.
script 3 (void)
{
int angle = 30.0;
int szorzo = FixedDiv(32.0, 45.0);
print(f: sin(FixedDiv(FixedMul(angle, szorzo), 256.0)));
}
cocka wrote:2 - How do I make sin(30) return 0.5? It's returning some odd values that I can't understand.
Well, that's a tricky one but you can write an acs script to convert a normal angle value which can be used by the sin function.
Normal angle = 30°
byte angle = 32/45 * normal angle
normal angle = 45/32 * byte angle
- Code: Select all • Expand view
script 3 (void)
{
int angle = 30.0;
int szorzo = FixedDiv(32.0, 45.0);
print(f: sin(FixedDiv(FixedMul(angle, szorzo), 256.0)));
}
Though the calculation is not really exact.

TNT1 A 0 A_Jump(32,"Death")KillDead:
TNT1 A 0 A_Die
Death:
// Death animation
Users browsing this forum: Google [Bot], Google Feedfetcher and 4 guests