ページ 11

【解決済】ダメージポップアップの桁の表示差をなくす方法

Posted: 2020年11月24日(火) 18:24
by kitakita
桁の大きなダメージをポップアップさせると桁の表示差が出てうねるようになります。
この表示差を0にして桁が大きくても真っすぐに表示させたいのですが、どこか修正できる場所がありましたら教えてください。

Re: ダメージポップアップの桁の表示差をなくす方法

Posted: 2020年11月24日(火) 20:15
by ムノクラ
kitakita さんが書きました:桁の大きなダメージをポップアップさせると桁の表示差が出てうねるようになります。
この表示差を0にして桁が大きくても真っすぐに表示させたいのですが、どこか修正できる場所がありましたら教えてください。


取り急ぎ、近い動作をさせるプラグインをご紹介します。
SRD Battle Popup Customizer プラグイン Ver1.20
https://fungamemake.com/archives/9418

ポップアップのアニメーションを「右へスライド」などを選ぶと縦には跳ねません。

Re: ダメージポップアップの桁の表示差をなくす方法

Posted: 2020年11月24日(火) 20:24
by ムノクラ
下記をプラグインとして保存すれば、ダメージのポップアップはアニメーションしなくなります。

コード: 全て選択

(() => {
  "use strict";

  Sprite_Damage.prototype.updateChild = function (sprite) {
  };

})();

Re: ダメージポップアップの桁の表示差をなくす方法

Posted: 2020年11月24日(火) 23:32
by kitakita
ポップアップアニメーション自体は既存のままでよいです。
桁ごとに表示差が出ているので3桁を超えるとうねるように表示されます。
これを解消したいです。

どこかに表示差の数値があってそれを0にすれば全桁が同時に出現されるのではないかと想像しています。

Re: ダメージポップアップの桁の表示差をなくす方法

Posted: 2020年11月24日(火) 23:51
by ムノクラ
kitakita さんが書きました:ポップアップアニメーション自体は既存のままでよいです。
桁ごとに表示差が出ているので3桁を超えるとうねるように表示されます。
これを解消したいです。

どこかに表示差の数値があってそれを0にすれば全桁が同時に出現されるのではないかと想像しています。


自分には「うねる」がどの部分かが、よく理解できませんでした。
もしかして、ダメージの数値が縦にズレないままポップアップする動作を希望されているのでしょうか?

デフォルト
https://youtu.be/5yRBe2UnIh4

アニメーション停止
https://youtu.be/_K1KIQCir9Q

Re: ダメージポップアップの桁の表示差をなくす方法

Posted: 2020年11月25日(水) 00:10
by kitakita
上記デフォルトの動画を見ると
4桁のダメージ、3桁のダメージがポップアップで表示されていますが、
それぞれの数字が同時ではありません
1129の場合は1の落下より9の落下が遅いです
これは桁ごとに表示差が出ているためではないでしょうか?
ダメージが10桁になれば最初の桁と最後の桁では落下のタイミングが大きく差が出ます。
これを解消したいのです。

この桁ごとの表示差は新規プロジェクトでも確認できるのでデフォルト使用だと思います。

Re: ダメージポップアップの桁の表示差をなくす方法

Posted: 2020年11月25日(水) 02:06
by ecf5DTTzl6h6lJj02
こんばんは。
きちんとテストしてませんが、
以下のコードをプラグイン化して、希望の動作になるか試してみてください。

コード: 全て選択

(()=>{
    'use strict'
   
    Sprite_Damage.prototype.createDigits = function(baseRow, value) {
        var string = Math.abs(value).toString();
        var row = baseRow + (value < 0 ? 1 : 0);
        var w = this.digitWidth();
        var h = this.digitHeight();
        for (var i = 0; i < string.length; i++) {
            var sprite = this.createChildSprite();
            var n = Number(string[i]);
            sprite.setFrame(n * w, row * h, w, h);
            sprite.x = (i - (string.length - 1) / 2) * w;
            // sprite.dy = -i;
            sprite.dy = 0;
        }
    };
})();

コメントアウトしてる部分で、桁ごとにY座標をずらしているので、うねってるように見えるのを、
全て同じY座標を指定することでうねらないようにしたつもりです。

Re: ダメージポップアップの桁の表示差をなくす方法

Posted: 2020年11月25日(水) 12:48
by kitakita
上記コードを試した所希望の動作をしました。
敵に与えるダメージが5桁になっても真っすぐに表示され、落下するアニメーションがでます。
ありがとうございました。