カスタムguiを開きながらインベントリのアイテムクリックを検知する

こういうものを書いてみたのですが、インベントリ内の種をクリックしたときもaと言ってくれません...
on inventory click:
if name of clicked inventory is "&8&lかまど":
cancel event
if name of clicked inventory is not "&8&lかまど":
if event-item is seed:
send "a"
on inventory click:
if name of clicked inventory is "&8&lかまど":
cancel event
if name of clicked inventory is not "&8&lかまど":
if event-item is seed:
send "a"
ほかにも二つ目の条件をseed named "種"、name of clicked inventory is "inventory"など、いろいろ試してみましたが、うまく動いてくれませんでした...
27 Replies
oishiigohan
oishiigohanOP2y ago
ちなみに、別のサーバーなんですが、ハイピクセルスカイブロックのコンポスターのようなものを目指しています。(自分のインベントリにある作物をクリックすると左のゲージが増える...という感じです)
yukkina
yukkina2y ago
4行目以降のインデントをひとつずつ減らしましょう
oishiigohan
oishiigohanOP2y ago
こうすると、カスタムguiを開いていなくてもaって言っちゃいました..
yukkina
yukkina2y ago
on inventory click:
name of clicked inventory is "&8&lかまど"
cancel event
if event-item is seed:
send "a"
on inventory click:
name of clicked inventory is "&8&lかまど"
cancel event
if event-item is seed:
send "a"
ほい ちゃんと読んでなかったわすまん
oishiigohan
oishiigohanOP2y ago
あ、すいません、こっちも説明足りなかったです… やりたいのは、カスタムguiとインベントリにそれぞれ種があって、インベントリ内の種だけ反応させたいんです(最悪名前とかでできそうですが…)
unnnnnnnnnnn
unnnnnnnnnnn2y ago
やりたいことよくわからないけどplayer's current inventoryで解決しそう
yukkina
yukkina2y ago
ああ 理解したわ
on inventory click:
name of player's current inventory is "&8&lかまど"
clicked inventory is player's inventory
cancel event
if event-item is seed:
send "a"
on inventory click:
name of player's current inventory is "&8&lかまど"
clicked inventory is player's inventory
cancel event
if event-item is seed:
send "a"
3行目の構文あってるか怪しい
oishiigohan
oishiigohanOP2y ago
動きました!ありがとうございます! あまり理解できてないのですが、3行目のような条件なのにifがいらないときってなんでなんですか?
mirageeeeeeeeeeeeeeeeeeeeeeeeeee
if ~~は条件分岐っていうものをしたいときに使う 前提として、Skriptにはconditionsっていう、AがBかどうか を判断する構文の種類がある 例えば今回の場合、 clicked inventory(=A) is player's inventory(=B) がそれに該当する 本来conditionsはそれ単体で動作して、AがBでなければそれ以降の行の処理を行わないっていう性質があるんだけど ifと組み合わせることで、AがBなら追加で以下の#~~~の部分の処理を行うことが出来る
if A is B:
#~~~
#~~~
#---
if A is B:
#~~~
#~~~
#---
多くのskriptのdocumentation等ではconditionをifと組み合わせて使ってるから、ifと併用しないと使えないっていうイメージが先行しがちだけど、実際は違うんだね これを使うと、ifを多用してコードがごちゃごちゃになるのをある程度回避できる
on damage:
if type of victim is player:
if victim is not an op:
send "ダメージを与えた" to attacker
else:
cancel event
send "opには攻撃できない" to attacker
else:
cancel event
send "プレイヤー以外には攻撃できない" to attacker
on damage:
if type of victim is player:
if victim is not an op:
send "ダメージを与えた" to attacker
else:
cancel event
send "opには攻撃できない" to attacker
else:
cancel event
send "プレイヤー以外には攻撃できない" to attacker
on damage:
if type of victim is not player:
cancel event
send"プレイヤー以外には攻撃できない" to attacker
stop
if victim is an op:
cancel event
send "opには攻撃できない" to attacker
stop
send "ダメージを与えた" to attacker
on damage:
if type of victim is not player:
cancel event
send"プレイヤー以外には攻撃できない" to attacker
stop
if victim is an op:
cancel event
send "opには攻撃できない" to attacker
stop
send "ダメージを与えた" to attacker
好みの問題もあるかもしれんけど、条件もっと増えてくると酷い事になるから適切に使用することをお勧めします
oishiigohan
oishiigohanOP2y ago
なるほど..? 何種類か書き方があるんですね むずかしいですが、覚えて活用してこうと思います..!
何か
何か2y ago
ifなしのパターンはskqueryないとできません
mirageeeeeeeeeeeeeeeeeeeeeeeeeee
? うそをつけ
何か
何か2y ago
じごくさんが 嘘をつくわけないじゃないですか
Unknown User
Unknown User2y ago
Message Not Public
Sign In & Join Server To View
何か
何か2y ago
おれのサブ垢もおれが嘘つくわけないっていってるから 俺はうそをついてない
何か
何か2y ago
skUnity
skUnity
View a total of 1 search results on skUnity
yukkina
yukkina2y ago
それは true is true: の話じゃないの? true is true は別では? 違うのかな
何か
何か2y ago
ほんとだ 普通に行けるわ
mirageeeeeeeeeeeeeeeeeeeeeeeeeee
poor skripter
yukkina
yukkina2y ago
じごくが間違えるの珍しい
何か
何か2y ago
脱skripter 長年のhack makingで腕がなまってしまった
yukkina
yukkina2y ago
ハッククライアント作ってるん
何か
何か2y ago
ハックくらいアントは だいぶ前に作った 2年前 windowsのgame hackingをしばらくやったあとにハッククライアントをつくってそのあとは androidのhackをやってた
yukkina
yukkina2y ago
わお
mirageeeeeeeeeeeeeeeeeeeeeeeeeee
多分これは
if {_var} is true:
if {_var} is true:
if {_var}:
if {_var}:
と書けるやつです
yukkina
yukkina2y ago
あぁ〜
Want results from more Discord servers?
Add your server