攻撃をチャージしていなかった時のダメージを0にしたい
コード(Skripthubにある例文?みたいなやつ)
内部エラーが出てattack cooldown of attackerが取得できません
PRではattack cooldown of attackerを使うことはできないのでしょうか。
21 Replies
/viewer
java.lang.NoSuchMethodError: org.bukkit.entity.HumanEntity.getAttackCooldown() なんでversionあってないみたいですね
鯖のバージョンなんですか?
1.12.2です
skript2.6.3です
PlayerRealmsです
それです原因
1.12で2.6やもんなぁ、、
PRじゃむりですか?
ba-zyonn sagerebaiinodeha ?
https://skripthub.net/docs/?id=6650
attack cooldown of attacker がSkript Ver2.6.1からなんですよね。。
Skript Hub - Documentation
Attack Cooldown (Expression) - Skript
Returns the current cooldown for a player's attack. This is used to calculate damage, with 1.0 representing a fully charged attack and 0.0 representing a non-charged attack.
NOTE: Currently this can not be set to anything.
無理っすね
中のコード見てどう動いてるかみましょう
HumanEntity.getAttackCooldown() 野中
ほかの取得方法ないんかね
そもそもアタッククールダウンって
何で管理されてるんや?
playerのnbt?
だとしたら多分取れるよね
The attackSpeed attribute controls the length of the cooldown time, with the time taken being T = 20 / attackSpeed ticks. The damage multiplier is then 0.2 + ((t + 0.5) / T) ^ 2 * 0.8, restricted to the range 0.2 – 1, where t is the number of ticks since the last attack or item switch. ごり押すなら この式使って 計算するとか
skRageにあったりしないかなと探したけどなかった
あとは
エンパのクールダウンみたいなの実装すれば
見やすさ維持したまま独自クールダウン作れるよね
packet
docsとか見てて思ったのは
残りのクールダウン時間は完全にクライアント側の処理なのかなって
んで、攻撃した時にクールダウン何%完了したかってpacketを送信してる
spigot mcのフォーラムとか覗いても、サーバー側から確認することはできませんって一蹴されてるのばっかだった
ダメージから何とか出来ないかな
すみません質問が悪かったです。
っていう感じです。素晴らしき質問ができてなくてすみません。
独自でcooldown作るのが
一番よさそう()
攻撃速度限界まで上げてデフォのチャージアタック表示無効化して
エンパのクールダウンエフェクトを武器に適用するとかで妥協しよう
skRage入れて
するだけ
注意事項としてエンパのクールダウンはアイテムIDで決まるのでnbtが異なっても同じ鉄剣なら全部がクールダウン表記されます
できました!ありがとうございます