ダイヤモンドを右クリックした後の15秒間、敵にダメージを与えると継続ダメージを与える

on rightclick holding diamond:
set {centhe2.skill.%player%} to 1
set {centhe2.click.%player%} to now
wait 15 seconds
difference between now and {centhe2.click.%player%} > 14 seconds
set {centhe2.skill.%player%} to 0
on damage:
if 1 = {centhe2.skill.%attacker%}:
make attacker damage victim by 5
on rightclick holding diamond:
set {centhe2.skill.%player%} to 1
set {centhe2.click.%player%} to now
wait 15 seconds
difference between now and {centhe2.click.%player%} > 14 seconds
set {centhe2.skill.%player%} to 0
on damage:
if 1 = {centhe2.skill.%attacker%}:
make attacker damage victim by 5
27 Replies
makaronipizaa
makaronipizaaOP12mo ago
とりあえず継続ダメージではないんですけど追加ダメージで実験してみて、右クリックした後の15秒間~~~はうまくいったんですけど なぜか殴ると敵が一瞬で死にます 多分make attacker damage がループして敵が死ぬまでダメージを与えてるんだと思うんですけど 回避方法が分かりません on damage だから、殴った時に、もし{centhe2.skill.%attacker%}が1だったら殴られた側に5ダメージ与える とはならないのですか
ふぁたおくん
make damageによってon damageが呼び出されたりするのかなーなんて思ったりしました知らんけど
makaronipizaa
makaronipizaaOP12mo ago
あっあっあっ 灯台下暗し.......... これ何回引っかかればいいの これset damageで大丈夫なんだろうか 今から試すけど 大丈夫じゃないわ これあれか、普通に考えたらわかるけどダメージを変えるのか これ無理じゃない...?
わし
わし12mo ago
ダメージ量を999とかのありえない数値にして
on damage
if 1 = {centhe2.skill.%attacker%}:
if damage is not 999:
make attacker damage victim by 999
if damage is 999:
set damage to 5
on damage
if 1 = {centhe2.skill.%attacker%}:
if damage is not 999:
make attacker damage victim by 999
if damage is 999:
set damage to 5
とか?
月猫ch
月猫ch12mo ago
@まにち -> @maronipizza いうなれば『一定時間 攻撃に出血属性を付与』みたいなことがしたいの? えーと、つまるところ以下の要素が知りたい ・継続ダメージは重複するのか ・右クリから15秒間の間に攻撃した相手に、スリップダメージを何秒与えるのか
mirageeeeeeeeeeeeeeeeeeeeeeeeeee
メンション先えぐ
月猫ch
月猫ch12mo ago
おうちょっとまてなんでまにちニキになってるの
mirageeeeeeeeeeeeeeeeeeeeeeeeeee
すしペロ呼び出しとる 醤油だったわ バージョンバージョンバージョンバージョンバージョンバージョンバージョンバージョンバージョンバージョン
月猫ch
月猫ch12mo ago
やりたいことやりたいことやりたいことやりたいことやりたいことやりたいことやりたいことやりたいこと
mirageeeeeeeeeeeeeeeeeeeeeeeeeee
#❓素晴らしい質問の仕方💡
makaronipizaa
makaronipizaaOP12mo ago
継続ダメージは重複せず、スリップダメージは4秒です
月猫ch
月猫ch12mo ago
修正中
mirageeeeeeeeeeeeeeeeeeeeeeeeeee
なんでバージョン書かないねん
月猫ch
月猫ch12mo ago
要望に沿った設定すると
on load:
delete {slipDmgingPlayer::*}
on damage:
if {centhe2.skill.%attacker%} = 1:
damage is not 1145141919
{slipDmgingPlayer::*} doesn't contain victim
add victim to {slipDmgingPlayer::*}
loop 4 times:
continue victim is not alive
wait 1 second
make attacker damage victim by 1145141919
remove victim to {slipDmgingPlayer::*}
set damage to 5 if damage is 1145141919
on load:
delete {slipDmgingPlayer::*}
on damage:
if {centhe2.skill.%attacker%} = 1:
damage is not 1145141919
{slipDmgingPlayer::*} doesn't contain victim
add victim to {slipDmgingPlayer::*}
loop 4 times:
continue victim is not alive
wait 1 second
make attacker damage victim by 1145141919
remove victim to {slipDmgingPlayer::*}
set damage to 5 if damage is 1145141919
こう?
わし
わし12mo ago
下から2行目の条件あると、15秒終わったタイミングで、スリップダメージであることを表すための1145141919ダメージがそのまま入るようになっちゃうから そこ消せば多分よさそう これのon rightclickイベントの方 wait 15 seconds した後にdifference between now and {centhe2.click.%player%} > 14 seconds してるの無駄で気になる
___
___12mo ago
on load:
set {skills::dot::damage} to 4
set {skills::dot::time} to 15
set {skills::dot::time::duration} to 4

on right click with diamond:
set {skills::dot::players::%player%} to player
loop {skills::dot::time} times:
wait a second
delete {skills::dot::players::%player%::*}
delete {skills::dot::players::%player%}

on damage:
{skills::dot::players::%attacker%} is set
set {_id} to uuid of victim
if {skills::dot::players::%attacker%::entities::%{_id}%::slipDamaging}:
delete {skills::dot::players::%attacker%::entities::%{_id}%::slipDamaging}
stop
if {skills::dot::players::%attacker%::entities::%{_id}%} is not set:
set {skills::dot::players::%attacker%::entities::%{_id}%} to {skills::dot::time::duration}
while {skills::dot::players::%attacker%::entities::%{_id}%} is set:
wait a second
set {skills::dot::players::%attacker%::entities::%{_id}%::slipDamaging} to true
make attacker damage victim by {skills::dot::damage}
subtract 1 from {skills::dot::players::%attacker%::entities::%{_id}%}
{skills::dot::players::%attacker%::entities::%{_id}%} <= 0
delete {skills::dot::players::%attacker%::entities::%{_id}%}
else:
set {skills::dot::players::%attacker%::entities::%{_id}%} to {skills::dot::time::duration}
on load:
set {skills::dot::damage} to 4
set {skills::dot::time} to 15
set {skills::dot::time::duration} to 4

on right click with diamond:
set {skills::dot::players::%player%} to player
loop {skills::dot::time} times:
wait a second
delete {skills::dot::players::%player%::*}
delete {skills::dot::players::%player%}

on damage:
{skills::dot::players::%attacker%} is set
set {_id} to uuid of victim
if {skills::dot::players::%attacker%::entities::%{_id}%::slipDamaging}:
delete {skills::dot::players::%attacker%::entities::%{_id}%::slipDamaging}
stop
if {skills::dot::players::%attacker%::entities::%{_id}%} is not set:
set {skills::dot::players::%attacker%::entities::%{_id}%} to {skills::dot::time::duration}
while {skills::dot::players::%attacker%::entities::%{_id}%} is set:
wait a second
set {skills::dot::players::%attacker%::entities::%{_id}%::slipDamaging} to true
make attacker damage victim by {skills::dot::damage}
subtract 1 from {skills::dot::players::%attacker%::entities::%{_id}%}
{skills::dot::players::%attacker%::entities::%{_id}%} <= 0
delete {skills::dot::players::%attacker%::entities::%{_id}%}
else:
set {skills::dot::players::%attacker%::entities::%{_id}%} to {skills::dot::time::duration}
https://www.ranvis.com/articles/smart-questions.ja.html#beprecise
add player to {a::*} と
set {a::%player%} to player
add player to {a::*} と
set {a::%player%} to player
だと速度に300倍ぐらいの差があったから多用するとタグの原因になりそう🤔
月猫ch
月猫ch12mo ago
300倍!?
___
___12mo ago
うん。 攻城戦の処理を早くするためにいくつかのパターンで速度を計測したときそのぐらいの差がでた
月猫ch
月猫ch12mo ago
上のほうが遅い?
___
___12mo ago
月猫ch
月猫ch12mo ago
下のほうが遅いの!?
___
___12mo ago
jigokuも言ってたようにaddよりsetのほうがすごく早いです a 上の方が遅い
月猫ch
月猫ch12mo ago
あ、下のほうが早いのね そうだよね
___
___12mo ago
よく見てなかった
月猫ch
月猫ch12mo ago
nt
___
___12mo ago
僕、よくこういうことあるんですよ
月猫ch
月猫ch12mo ago
俺もまれによくある
Want results from more Discord servers?
Add your server