• R/O
  • HTTP
  • SSH
  • HTTPS

Commit

Tags
No Tags

Frequently used words (click to add to your profile)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

Commit MetaInfo

Revisiónd8a4145606bb0d4106afb28d3d0acffc9956ae17 (tree)
Tiempo2017-02-20 20:23:01
AutorSUEHIRO <supersuehiro@user...>
CommiterSUEHIRO

Log Message

ステージの影などを修正

Cambiar Resumen

Diferencia incremental

--- a/ssz/char.ssz
+++ b/ssz/char.ssz
@@ -78,15 +78,15 @@ void drawClsn()
7878 {
7979 public ^&.AnimSprite as;
8080 public int color, alpha;
81- public float offsety = 0.0;
81+ public float offsety = 0.0, fadeoffset = 0.0;
8282 }
8383
8484 %^&ShadowSprite shadows;
8585
8686 public void addAnimList(
8787 %^&.AnimSprite al=, ^&.act.Action a, int p, float x, float y, bool scr,
88- float xs, float ys, float an, bool oVer, float ax, float ay,
89- int sa, int da, bool b, ^&.com.PalFX fx, int sc, int salp, float so)
88+ float xs, float ys, float an, bool oVer, float ax, float ay, int sa, int da,
89+ bool b, ^&.com.PalFX fx, int sc, int salp, float so, float fo)
9090 {
9191 ^&.AnimSprite newSprite()
9292 {
@@ -107,7 +107,7 @@ public void addAnimList(
107107 as~salpha = `sa;
108108 as~dalpha = `da;
109109 as~fx = `fx;
110- if(`sc != 0) .addShadowList(as, `sc, `so, `salp);
110+ if(`sc != 0) .addShadowList(as, `sc, `so, `salp, `fo);
111111 ret as;
112112 }
113113 if(.se.fskip || #a == 0 || #a~ani.spr == 0) ret;
@@ -182,7 +182,8 @@ public void drawAnimList(%^&.AnimSprite al=, float x, float y, float scl)
182182 while i < #al:}
183183 }
184184
185-public void addShadowList(^&.AnimSprite as, int sc, float so, int alpha)
185+public void addShadowList(
186+ ^&.AnimSprite as, int sc, float so, int alpha, float fo)
186187 {
187188 ^&.ShadowSprite newSprite()
188189 {
@@ -191,6 +192,7 @@ public void addShadowList(^&.AnimSprite as, int sc, float so, int alpha)
191192 ss~color = `sc;
192193 ss~alpha = .m.max!int?(0, .m.min!int?(256, `alpha));
193194 ss~offsety = `so * (`as~oVer ? 1.5 : 1.0);
195+ ss~fadeoffset = `fo;
194196 ret ss;
195197 }
196198 int p = as~priority;
@@ -227,12 +229,14 @@ public void drawShadowList(float x, float y, float scl)
227229 branch{
228230 int alpha = ss.alpha;
229231 branch{
230- cond ss.as~y < (float).stg~sdw.fadeend*.stg~localscl:
232+ float y = ss.as~y - ss.fadeoffset;
233+ cond .stg~sdw.fadebgn >= .stg~sdw.fadeend:
234+ cond y <= (float).stg~sdw.fadeend * .stg~localscl:
231235 ret;
232- cond ss.as~y < (float).stg~sdw.fadebgn*.stg~localscl:
236+ cond y < (float).stg~sdw.fadebgn * .stg~localscl:
233237 alpha =
234238 (int)(
235- (float)alpha * ((float).stg~sdw.fadeend*.stg~localscl-ss.as~y)
239+ (float)alpha * ((float).stg~sdw.fadeend * .stg~localscl - y)
236240 / (
237241 ((float).stg~sdw.fadeend - (float).stg~sdw.fadebgn)
238242 * .stg~localscl));
@@ -498,7 +502,7 @@ public void drawReflection(float x, float y, float scl)
498502 `imgs[`imgidx-i&63].angle, `imgs[`imgidx-i&63].oVer,
499503 `imgs[`imgidx-i&63].axscl, `imgs[`imgidx-i&63].ayscl,
500504 `alphas, `alphad, br, `palfx[pfxi .. pfxi + 1],
501- 0, 0, 0.0);
505+ 0, 0, 0.0, 0.0);
502506 i += `framegap;
503507 while i <= end:}
504508 if(rec) `recAfterImg(a=, x, y, xs, ys, an, oVer, ax, ay, cfx);
@@ -2010,7 +2014,7 @@ public &Projectile
20102014 .addAnimList(
20112015 .anims=, `ani, `sprpriority, `x, `y, false, (float)`facing*`scalex,
20122016 `scaley, 0.0, oVer, 1.0, 1.0, -1, 0, br, `palfx,
2013- `shadowr<<16 | (`shadowg&255)<<8 | (`shadowb&255), 256, 0.0);
2017+ `shadowr<<16 | (`shadowg&255)<<8 | (`shadowb&255), 256, 0.0, 0.0);
20142018 `aimg.recAndAddAL(
20152019 `ani<>=, `sprpriority, `x, `y, (float)`facing*`scalex, `scaley,
20162020 0.0, .cgi[playerNo].mver0 != 1, 1.0, 1.0,
@@ -3104,9 +3108,8 @@ public &Char
31043108 `sysfvar[.fANGLESCALEX], `sysfvar[.fANGLESCALEY],
31053109 `ls(.lsTRANS) ? `sysivar[.iALPHAS] : -1,
31063110 `sysivar[.iALPHAD], br, `getPalfx(),
3107- `ls(.lsNOSHADOW) ? 0 : -1,
3108- `ls(.lsTRANS) ? `sysivar[.iALPHAS] : 256,
3109- (float)`sysivar[.iSHADOWOFFSET]);
3111+ `ls(.lsNOSHADOW) ? 0 : -1, `ls(.lsTRANS) ? `sysivar[.iALPHAS] : 256,
3112+ (float)`sysivar[.iSHADOWOFFSET], `offsetY());
31103113 `aimg.recAndAddAL(
31113114 `ani<>=, `sprpriority, x, y, xs, ys, an, `mver0() != 1,
31123115 `sysfvar[.fANGLESCALEX], `sysfvar[.fANGLESCALEY],
@@ -5476,7 +5479,7 @@ public void Explod::update(bool oVer, int playerNo)
54765479 oVer, 1.0, 1.0, `alphas < 0 ? (int)-1 : `alphas,
54775480 `alphad, playerNo == .superplayer,
54785481 pfx, `shadowr<<16 | (`shadowg&255)<<8 | (`shadowb&255),
5479- `alphas < 0 ? 256 : `alphas, 0.0);
5482+ `alphas < 0 ? 256 : `alphas, 0.0, 0.0);
54805483 }];
54815484 cond `ontop != 0:
54825485 aal(:.topanims=:);
@@ -6639,7 +6642,7 @@ public float action(
66396642 .addAnimList(
66406643 .topanims=, .superanim, 5, .superposx, .superposy, false,
66416644 (float).superfacing, 1.0, 0.0, .cgi[.superplayer].mver0 != 1,
6642- 1.0, 1.0, -1, 0, true, .superpmap, 0, 0, 0.0);
6645+ 1.0, 1.0, -1, 0, true, .superpmap, 0, 0, 0.0, 0.0);
66436646 if(.superanim~ani.loopend) .superanim.new(0);
66446647 }
66456648 .anim();
--- a/ssz/sff.ssz
+++ b/ssz/sff.ssz
@@ -1165,6 +1165,7 @@ public &Anim<frame_t>
11651165 branch{
11661166 cond `dalpha < 0:
11671167 da = ((uint)!`dalpha + `frames[`drawidx].dalpha) >> 0x1;
1168+ if(sa == 0d1 && da == 0d255) sa = 0d0;
11681169 else:
11691170 da = (ubyte)`dalpha;
11701171 }