Adjustments and rebalances.
This commit is contained in:
parent
2ec0a9f060
commit
84ce3965c4
7 changed files with 50 additions and 30 deletions
|
|
@ -175,8 +175,8 @@ Object Ragekit
|
|||
FlickerLight2 LAMPLIGHT
|
||||
{
|
||||
Color 0.6 1.0 0.7
|
||||
Size 240
|
||||
SecondarySize 248
|
||||
Size 350
|
||||
SecondarySize 358
|
||||
Interval 0.1
|
||||
Offset 0 8 0
|
||||
Attenuate 1
|
||||
|
|
|
|||
|
|
@ -1,2 +1,2 @@
|
|||
[default]
|
||||
SWWM_MODVER="\chSWWM \cwGZ\c- r486 (Sun 16 Aug 17:39:19 CEST 2020)";
|
||||
SWWM_MODVER="\chSWWM \cwGZ\c- r487 (Mon 17 Aug 00:03:30 CEST 2020)";
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ void main()
|
|||
float w = 1.;
|
||||
vec2 s = TexCoord;
|
||||
float sum = 0.;
|
||||
for ( int i=0; i<16; i++ )
|
||||
for ( int i=0; i<32; i++ )
|
||||
{
|
||||
res += w*texture(InputTexture,s);
|
||||
sum += w;
|
||||
|
|
|
|||
|
|
@ -1052,7 +1052,7 @@ Class HellblazerRavagerArm : Actor
|
|||
l.target = p;
|
||||
}
|
||||
if ( !(ReactionTime%1) )
|
||||
SWWMHandler.DoExplosion(self,4+reactiontime*4,1000+200*reactiontime,250-6*reactiontime);
|
||||
SWWMHandler.DoExplosion(self,4+reactiontime*2,1000+200*reactiontime,250-6*reactiontime);
|
||||
double spd = vel.length();
|
||||
vel = (vel*.4+(FRandom[ExploS](-.2,.2),FRandom[ExploS](-.2,.2),FRandom[ExploS](-.2,.2))).unit()*spd;
|
||||
Vector3 pvel = (FRandom[ExploS](-1,1),FRandom[ExploS](-1,1),FRandom[ExploS](-1,1)).unit()*FRandom[ExploS](1,5);
|
||||
|
|
|
|||
|
|
@ -1302,7 +1302,7 @@ Class SWWMItemSense : Thinker
|
|||
{
|
||||
if ( s.item != item ) continue;
|
||||
s.updated = level.maptime+35;
|
||||
s.pos = item.Vec3Offset(0,0,16);
|
||||
s.pos = item.Vec3Offset(0,0,item.height);
|
||||
return s;
|
||||
}
|
||||
let i = new("SWWMItemSense");
|
||||
|
|
@ -1311,7 +1311,7 @@ Class SWWMItemSense : Thinker
|
|||
i.parent = parent;
|
||||
i.updated = level.maptime+35;
|
||||
i.UpdateTag();
|
||||
i.pos = item.Vec3Offset(0,0,16);
|
||||
i.pos = item.Vec3Offset(0,0,item.height);
|
||||
i.next = parent.itemsense;
|
||||
if ( parent.itemsense ) parent.itemsense.prev = i;
|
||||
parent.itemsense = i;
|
||||
|
|
@ -1322,7 +1322,15 @@ Class SWWMItemSense : Thinker
|
|||
void UpdateTag()
|
||||
{
|
||||
if ( !item ) return;
|
||||
tag = item.GetTag();
|
||||
// certain ammo types use the pickup message as it's amount-aware
|
||||
if ( (item is 'RedShell') || (item is 'GreenShell')
|
||||
|| (item is 'WhiteShell') || (item is 'BlueShell')
|
||||
|| (item is 'BlackShell') || (item is 'PurpleShell')
|
||||
|| (item is 'GoldShell') || (item is 'EvisceratorShell')
|
||||
|| (item is 'HellblazerMissiles')|| (item is 'HellblazerCrackshots')
|
||||
|| (item is 'HellblazerRavagers')|| (item is 'HellblazerWarheads') )
|
||||
tag = item.PickupMessage();
|
||||
else tag = item.GetTag();
|
||||
}
|
||||
|
||||
override void OnDestroy()
|
||||
|
|
@ -3081,6 +3089,12 @@ Class SWWMHandler : EventHandler
|
|||
if ( (p.type != INT_Key) || !p.trackedkey ) continue;
|
||||
p.keytag = p.trackedkey.GetTag();
|
||||
}
|
||||
for ( int i=0; i<MAXPLAYERS; i++ )
|
||||
{
|
||||
if ( !playeringame[i] || !Demolitionist(players[i].mo) ) continue;
|
||||
for ( SWWMItemSense s=Demolitionist(players[i].mo).itemsense; s; s=s.next )
|
||||
s.UpdateTag();
|
||||
}
|
||||
}
|
||||
curlang = lang.GetString();
|
||||
curfuntags = funtags.GetBool();
|
||||
|
|
@ -4122,10 +4136,10 @@ Class SWWMHandler : EventHandler
|
|||
}
|
||||
Vector3 vel = demo.vel+demo.dashdir*demo.dashboost;
|
||||
double baumpu = max(0.,(demo.bumptic-(gametic+e.Fractic))/35.);
|
||||
vel *= 1.+baumpu;
|
||||
vel += demo.dashdir*baumpu;
|
||||
double spd = vel.length();
|
||||
Vector3 worlddir = vel/spd;
|
||||
Shader.SetUniform1f(p,"ZoomBlur","Fade",clamp((spd-20.)/60.,0.,.5));
|
||||
Shader.SetUniform1f(p,"ZoomBlur","Fade",clamp((spd-20.)/60.,0.,.75));
|
||||
double str = min(spd/50.,10.);
|
||||
Vector3 x, y, z;
|
||||
[x, y, z] = swwm_CoordUtil.GetAxes(e.ViewPitch,e.ViewAngle,e.ViewRoll);
|
||||
|
|
|
|||
|
|
@ -42,7 +42,7 @@ Class SWWMKnowledgeBaseMenu : GenericMenu
|
|||
TextureID MainWindow, TabSeparator, WindowSeparator, WindowSeparatorH,
|
||||
FancyBg, EasterEgg, LoreSeparator, LoreSeparatorW;
|
||||
transient CVar lang, fuzz, pauseme;
|
||||
transient Font TewiFont, MPlusFont;
|
||||
transient Font TewiFont, MPlusFont, MiniwiFont, k6x8Font;
|
||||
int curtab, oldtab;
|
||||
// for scrolling
|
||||
bool sub;
|
||||
|
|
@ -90,7 +90,7 @@ Class SWWMKnowledgeBaseMenu : GenericMenu
|
|||
Font LangFont( Font req )
|
||||
{
|
||||
if ( !lang ) lang = CVar.GetCVar('language',players[consoleplayer]);
|
||||
if ( lang.GetString() ~== "jp" ) return MPlusFont;
|
||||
if ( lang.GetString() ~== "jp" ) return (req==MiniwiFont)?k6x8Font:MPlusFont;
|
||||
return req;
|
||||
}
|
||||
|
||||
|
|
@ -112,6 +112,8 @@ Class SWWMKnowledgeBaseMenu : GenericMenu
|
|||
}
|
||||
TewiFont = Font.GetFont('TewiShaded');
|
||||
MPlusFont = Font.GetFont('MPlusShaded');
|
||||
MiniwiFont = Font.GetFont('MiniwiShaded');
|
||||
k6x8Font = Font.GetFont('k6x8Shaded');
|
||||
FancyBg = TexMan.CheckForTexture("graphics/tempbg.png",TexMan.Type_MiscPatch);
|
||||
MainWindow = TexMan.CheckForTexture("graphics/KBase/MainWindow.png",TexMan.Type_MiscPatch);
|
||||
TabSeparator = TexMan.CheckForTexture("graphics/KBase/TabSeparator.png",TexMan.Type_MiscPatch);
|
||||
|
|
@ -2259,6 +2261,7 @@ Class SWWMKnowledgeBaseMenu : GenericMenu
|
|||
return;
|
||||
}
|
||||
int ofs = clamp(sel0,0,max(0,cnt-22));
|
||||
let fnt2 = LangFont(MiniwiFont);
|
||||
// calc lengths
|
||||
int len[4], maxlen[4];
|
||||
for ( int i=0; i<4; i++ ) maxlen[i] = 0;
|
||||
|
|
@ -2266,41 +2269,44 @@ Class SWWMKnowledgeBaseMenu : GenericMenu
|
|||
{
|
||||
int sec = Thinker.Tics2Seconds(stats.lstats[i].time);
|
||||
str = String.Format("T %02d:%02d:%02d",sec/3600,(sec%3600)/60,sec%60);
|
||||
len[0] = fnt.StringWidth(str);
|
||||
len[0] = fnt2.StringWidth(str);
|
||||
if ( len[0] > maxlen[0] ) maxlen[0] = len[0];
|
||||
str = String.Format("S %d/%d",stats.lstats[i].scount,stats.lstats[i].stotal);
|
||||
len[1] = fnt.StringWidth(str);
|
||||
len[1] = fnt2.StringWidth(str);
|
||||
if ( len[1] > maxlen[1] ) maxlen[1] = len[1];
|
||||
str = String.Format("I %d/%d",stats.lstats[i].icount,stats.lstats[i].itotal);
|
||||
len[2] = fnt.StringWidth(str);
|
||||
len[2] = fnt2.StringWidth(str);
|
||||
if ( len[2] > maxlen[2] ) maxlen[2] = len[2];
|
||||
str = String.Format("K %d/%d",stats.lstats[i].kcount,stats.lstats[i].ktotal);
|
||||
len[3] = fnt.StringWidth(str);
|
||||
len[3] = fnt2.StringWidth(str);
|
||||
if ( len[3] > maxlen[3] ) maxlen[3] = len[3];
|
||||
}
|
||||
for ( int i=ofs; i<cnt; i++ )
|
||||
{
|
||||
if ( yy >= 370 ) break;
|
||||
str = stats.lstats[i].hub?stats.lstats[i].levelname:String.Format("%s - %s",stats.lstats[i].mapname.MakeUpper(),stats.lstats[i].levelname);
|
||||
Screen.DrawText(fnt,Font.CR_FIRE,origin.x+xx,origin.y+yy,str,DTA_VirtualWidthF,ss.x,DTA_VirtualHeightF,ss.y,DTA_KeepRatio,true);
|
||||
bool smallname = fnt.StringWidth(str)>(620-(xx+maxlen[3]+maxlen[2]+maxlen[1]+maxlen[0]+24));
|
||||
if ( smallname ) yy += 2;
|
||||
Screen.DrawText(smallname?fnt2:fnt,Font.CR_FIRE,origin.x+xx,origin.y+yy,str,DTA_VirtualWidthF,ss.x,DTA_VirtualHeightF,ss.y,DTA_KeepRatio,true);
|
||||
if ( !smallname ) yy += 2;
|
||||
int ox = ((cnt>22)?623:631);
|
||||
int sec = Thinker.Tics2Seconds(stats.lstats[i].time);
|
||||
str = String.Format("%02d\cu:\c-%02d\cu:\c-%02d",sec/3600,(sec%3600)/60,sec%60);
|
||||
Screen.DrawText(fnt,Font.CR_WHITE,origin.x+ox-fnt.StringWidth(str),origin.y+yy,str,DTA_VirtualWidthF,ss.x,DTA_VirtualHeightF,ss.y,DTA_KeepRatio,true);
|
||||
Screen.DrawText(fnt,Font.CR_FIRE,origin.x+ox-maxlen[0],origin.y+yy,"T",DTA_VirtualWidthF,ss.x,DTA_VirtualHeightF,ss.y,DTA_KeepRatio,true);
|
||||
ox -= maxlen[0]+16;
|
||||
Screen.DrawText(fnt2,Font.CR_WHITE,origin.x+ox-fnt2.StringWidth(str),origin.y+yy,str,DTA_VirtualWidthF,ss.x,DTA_VirtualHeightF,ss.y,DTA_KeepRatio,true);
|
||||
Screen.DrawText(fnt2,Font.CR_FIRE,origin.x+ox-maxlen[0],origin.y+yy,"T",DTA_VirtualWidthF,ss.x,DTA_VirtualHeightF,ss.y,DTA_KeepRatio,true);
|
||||
ox -= maxlen[0]+8;
|
||||
str = String.Format("%d\cu/\c-%d",stats.lstats[i].scount,stats.lstats[i].stotal);
|
||||
Screen.DrawText(fnt,Font.CR_WHITE,origin.x+ox-fnt.StringWidth(str),origin.y+yy,str,DTA_VirtualWidthF,ss.x,DTA_VirtualHeightF,ss.y,DTA_KeepRatio,true);
|
||||
Screen.DrawText(fnt,Font.CR_FIRE,origin.x+ox-maxlen[1],origin.y+yy,"S",DTA_VirtualWidthF,ss.x,DTA_VirtualHeightF,ss.y,DTA_KeepRatio,true);
|
||||
ox -= maxlen[1]+16;
|
||||
Screen.DrawText(fnt2,Font.CR_WHITE,origin.x+ox-fnt2.StringWidth(str),origin.y+yy,str,DTA_VirtualWidthF,ss.x,DTA_VirtualHeightF,ss.y,DTA_KeepRatio,true);
|
||||
Screen.DrawText(fnt2,Font.CR_FIRE,origin.x+ox-maxlen[1],origin.y+yy,"S",DTA_VirtualWidthF,ss.x,DTA_VirtualHeightF,ss.y,DTA_KeepRatio,true);
|
||||
ox -= maxlen[1]+8;
|
||||
str = String.Format("%d\cu/\c-%d",stats.lstats[i].icount,stats.lstats[i].itotal);
|
||||
Screen.DrawText(fnt,Font.CR_WHITE,origin.x+ox-fnt.StringWidth(str),origin.y+yy,str,DTA_VirtualWidthF,ss.x,DTA_VirtualHeightF,ss.y,DTA_KeepRatio,true);
|
||||
Screen.DrawText(fnt,Font.CR_FIRE,origin.x+ox-maxlen[2],origin.y+yy,"I",DTA_VirtualWidthF,ss.x,DTA_VirtualHeightF,ss.y,DTA_KeepRatio,true);
|
||||
ox -= maxlen[2]+16;
|
||||
Screen.DrawText(fnt2,Font.CR_WHITE,origin.x+ox-fnt2.StringWidth(str),origin.y+yy,str,DTA_VirtualWidthF,ss.x,DTA_VirtualHeightF,ss.y,DTA_KeepRatio,true);
|
||||
Screen.DrawText(fnt2,Font.CR_FIRE,origin.x+ox-maxlen[2],origin.y+yy,"I",DTA_VirtualWidthF,ss.x,DTA_VirtualHeightF,ss.y,DTA_KeepRatio,true);
|
||||
ox -= maxlen[2]+8;
|
||||
str = String.Format("%d\cu/\c-%d",stats.lstats[i].kcount,stats.lstats[i].ktotal);
|
||||
Screen.DrawText(fnt,Font.CR_WHITE,origin.x+ox-fnt.StringWidth(str),origin.y+yy,str,DTA_VirtualWidthF,ss.x,DTA_VirtualHeightF,ss.y,DTA_KeepRatio,true);
|
||||
Screen.DrawText(fnt,Font.CR_FIRE,origin.x+ox-maxlen[3],origin.y+yy,"K",DTA_VirtualWidthF,ss.x,DTA_VirtualHeightF,ss.y,DTA_KeepRatio,true);
|
||||
yy += 16;
|
||||
Screen.DrawText(fnt2,Font.CR_WHITE,origin.x+ox-fnt2.StringWidth(str),origin.y+yy,str,DTA_VirtualWidthF,ss.x,DTA_VirtualHeightF,ss.y,DTA_KeepRatio,true);
|
||||
Screen.DrawText(fnt2,Font.CR_FIRE,origin.x+ox-maxlen[3],origin.y+yy,"K",DTA_VirtualWidthF,ss.x,DTA_VirtualHeightF,ss.y,DTA_KeepRatio,true);
|
||||
yy += 14;
|
||||
}
|
||||
// scrollbar
|
||||
if ( cnt > 22 )
|
||||
|
|
|
|||
|
|
@ -652,7 +652,7 @@ Class Demolitionist : PlayerPawn
|
|||
A_QuakeEx(4,4,4,10,0,128,"",QF_RELATIVE|QF_SCALEDOWN);
|
||||
A_StartSound("demolitionist/bump",CHAN_DAMAGE,CHANF_OVERLAP);
|
||||
a.A_StartSound("demolitionist/bump",CHAN_DAMAGE,CHANF_OVERLAP);
|
||||
bumptic = gametic+int(5+spd/4.);
|
||||
bumptic = gametic+int(20+spd/4.);
|
||||
if ( (diff.z < a.height) && (lastvelz >= -25) && (a.bDONTTHRUST || (a.Mass >= Mass*1.5)) )
|
||||
{
|
||||
if ( bumped ) continue;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue