show TEMP の挙動の相談

sk 2.5.3 です show crit with speed 1 at location at {_loc} 上記構文でエフェクトを表示させると vector 1,1,1 方向にだけ飛ぶエフェクトになってしまいます show 3 crit with speed 1 at location at {_loc} こうすると、3つのcritが {_loc}を中心に 1m範囲内?でランダムな位置に生成されます critを、{_loc}を中央とした花火のように ランダムな方向に広がるように表示できていた記憶があるのですが そのようにすることは可能でしょうか バニラコマンドでいうところの /particle endRod X Y Z 0 0 0 0.1 10 みたいな感じで表示させたいです ※補足 lava popとかblock breakは全方向にランダムに広がってました これは多分パーティクルのデフォルトの動きがこうなのだと思います
7 Replies
Tsukineko(月雲)
show crit with speed 1 at location at {_loc 1,1,1方向にしか飛ばないエフェクト
Tsukineko(月雲)
with offset of 0, 0, 0 を使うことで一応中央から出るようにはなりました が、やたら速度が速くて5~7mくらい最終的に拡散します speedで調節できるのかと思ったのですが 何やら挙動が意味不明です and speed 0➡{_loc}に表示 and speed 0.1➡{_loc}に表示 and speed 1➡動画参照 ざっくりいうと、少数になった途端にspeed 0と同じ挙動をします
Tsukineko(月雲)
このパーティクルの拡散量を調節することは可能でしょうか 通常のクリティカル攻撃くらいのサイズまで下げたいです
___
___4mo ago
function random() :: number:
return (random number between 0 and 1)

on damage:
set {_l} to location of victim
set {_hitbox::width} to hitbox width of victim
set {_hitbox::height} to hitbox length of victim
loop 32 times:
set {_d::x} to random() * 2 - 1
set {_d::y} to random() * 2 - 1
set {_d::z} to random() * 2 - 1
if ({_d::x} ^ 2) + ({_d::y} ^ 2) + ({_d::z} ^ 2) <= 1:
set {_pos::x} to (x pos of {_l}) + {_d::x} * {_hitbox::width} / 4
set {_pos::y} to (y pos of {_l}) + {_hitbox::height} / 2 + {_d::y} * {_hitbox::height} / 4
set {_pos::z} to (z pos of {_l}) + {_d::z} * {_hitbox::width} / 4
set {_center} to location({_pos::x}, {_pos::y}, {_pos::z})
add 0.2 to {_d::y}
set {_motion::x} to {_motion::x} + (random() * 2 - 1) * 0.4000000059604645
set {_motion::y} to {_motion::y} + (random() * 2 - 1) * 0.4000000059604645
set {_motion::z} to {_motion::z} + (random() * 2 - 1) * 0.4000000059604645
set {_f::1} to (random() + random() + 1) * 0.15
set {_f::2} to sqrt(({_motion::x} ^ 2) + ({_motion::y} ^ 2) + ({_motion::z} ^ 2))
set {_motion::x} to {_motion::x} / {_f::2} * {_f::1} * 0.4000000059604645
set {_motion::y} to {_motion::y} / {_f::2} * {_f::1} * 0.4000000059604645 + 0.10000000149011612
set {_motion::z} to {_motion::z} / {_f::2} * {_f::1} * 0.4000000059604645
set {_motion::x} to {_motion::x} * 0.10000000149011612
set {_motion::y} to {_motion::y} * 0.10000000149011612
set {_motion::z} to {_motion::z} * 0.10000000149011612
drawDot count 1, particle "crit", speed 0.4, XYZ {_motion::x}, {_motion::y}, {_motion::z}, center {_center}, visibleRange 32, keepFor a tick
function random() :: number:
return (random number between 0 and 1)

on damage:
set {_l} to location of victim
set {_hitbox::width} to hitbox width of victim
set {_hitbox::height} to hitbox length of victim
loop 32 times:
set {_d::x} to random() * 2 - 1
set {_d::y} to random() * 2 - 1
set {_d::z} to random() * 2 - 1
if ({_d::x} ^ 2) + ({_d::y} ^ 2) + ({_d::z} ^ 2) <= 1:
set {_pos::x} to (x pos of {_l}) + {_d::x} * {_hitbox::width} / 4
set {_pos::y} to (y pos of {_l}) + {_hitbox::height} / 2 + {_d::y} * {_hitbox::height} / 4
set {_pos::z} to (z pos of {_l}) + {_d::z} * {_hitbox::width} / 4
set {_center} to location({_pos::x}, {_pos::y}, {_pos::z})
add 0.2 to {_d::y}
set {_motion::x} to {_motion::x} + (random() * 2 - 1) * 0.4000000059604645
set {_motion::y} to {_motion::y} + (random() * 2 - 1) * 0.4000000059604645
set {_motion::z} to {_motion::z} + (random() * 2 - 1) * 0.4000000059604645
set {_f::1} to (random() + random() + 1) * 0.15
set {_f::2} to sqrt(({_motion::x} ^ 2) + ({_motion::y} ^ 2) + ({_motion::z} ^ 2))
set {_motion::x} to {_motion::x} / {_f::2} * {_f::1} * 0.4000000059604645
set {_motion::y} to {_motion::y} / {_f::2} * {_f::1} * 0.4000000059604645 + 0.10000000149011612
set {_motion::z} to {_motion::z} / {_f::2} * {_f::1} * 0.4000000059604645
set {_motion::x} to {_motion::x} * 0.10000000149011612
set {_motion::y} to {_motion::y} * 0.10000000149011612
set {_motion::z} to {_motion::z} * 0.10000000149011612
drawDot count 1, particle "crit", speed 0.4, XYZ {_motion::x}, {_motion::y}, {_motion::z}, center {_center}, visibleRange 32, keepFor a tick
クリティカルのパーティクルの内部処理をskriptで書きました パケットから読みだすと speed * (offset)XYZ = motion XYZ になるみたいです
Tsukineko(月雲)
つまりoffsetを0ニシタンが良くなかったんですね… 後でちょっと試してみます!! (だから0.1, 0.1, 0,1 にしてる人がいたのか)
Want results from more Discord servers?
Add your server
More Posts
スキンが変更されない2TCT-plusにあやかって、妖狐の変身アイテムを実装してます ``` if name of clicked inventory is "TCTショップ": ~ else if name of cl大量の変数を消去したい`{entity::%uuid of entity%}` の形式で保存しているつもりが `{entity:%uuid of entity%}` という、リストになっていない形式で保存されてしまい deSkriptで与えたダメージのdamage causeを変更したいTCTの地雷を作ってます。 地雷の死因(damage cause)を変えるのに手間取っています。 SkRageのdamagesourceを用いて、クリーパー頭の近くにいるプレイヤーに対し `damaブロックの向きをプレイヤーの向きによって決める方法私は、今ブロックかくれんぼを作っています。 しかし、**ブロックの向きをプレイヤーの向きによって決める方法**がわからず、困惑しています。 誰か教えてください・「Mobを左クリック」のイベント剣でぶん殴るようなバニラとは違う攻撃方法を作成しており、 ``` on left click: ``` だけだとMobをクリックした場合は動作しないのでMobを左クリックした際に攻撃を行うコードを別にローカル変数の表記非常に初歩的な質問で申し訳ないんですが 変数名の先頭にアンダーバーを付けている場合のみローカル変数になりますよね? 要は ` {_hensuu} -> ローカル変数 {hensuu_%playerこんなエラーが出てskが組めない対処法教えてください。 バージョンは最新です耕して湿った土が乾くのを防ぎたいどのイベントを使えばいいのかわからない! ``` on entity change block: if event-block is wet farmland or soil block: プレイヤーの頭を設置する方法プレイヤーの頭を設置する方法ってありますか?できれば向いている方向も指定できると助かりますパーティクルをプレイヤーを中心とした円状に表示させる方法調べてもでてこない...............