[過去ログ]
【ワナビ歓迎】ゲーム開発者未満の雑談スレ 3 (1002レス)
【ワナビ歓迎】ゲーム開発者未満の雑談スレ 3 http://mevius.5ch.net/test/read.cgi/gamedev/1686308929/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
188: 名前は開発中のものです。 [sage] 2023/06/17(土) 06:43:05.19 ID:NCzTRwmd 質問させてくれ スペースキーを押すだけで伸縮する機能が作りたいんだけど、どう書けばいいんだろう スペースキー1回目:伸びる スペースキー2回目:縮小する というだけの機能 まあこういう無駄な部分にこだわっちまうから完成しないのかな。別キーを割り当てればいいだけのことだからな(´・ω・`)これがコアじゃないことをやっちまってるガイジ。 プログラミング能力がそもそも低すぎるんだけどな。 同じキーを使う場合、トグルを使ってtrueとfalseを切り替えないといけないから、以下のように4つの処理が必要になることは分かる # 1 キー押す(トグルがfalseの場合に動作) # 2 キー離す + トグルをtrueに入れる # 3 キー押す(トグルがtrueの場合に動作) # 4 キー離す + トグルをfalseに戻す https://ideone.com/MqR8YS そもそもこういう場合はif文でいいんかな match caseとか使うもん? http://mevius.5ch.net/test/read.cgi/gamedev/1686308929/188
191: 名前は開発中のものです。 [sage] 2023/06/17(土) 08:17:46.88 ID:0j+jIZgu >>188 unityは触ったことないがXORは使えんの? http://mevius.5ch.net/test/read.cgi/gamedev/1686308929/191
198: 名前は開発中のものです。 [sage] 2023/06/17(土) 19:31:33.59 ID:AWXqYgB/ >>188 自信ないけど書いてみた… if(スペースを押したとき){ if(変数==1){ 伸びるモードにして、且つ変数=2 }else if(変数==2){ 縮むモードにして、且つ変数=1 } } http://mevius.5ch.net/test/read.cgi/gamedev/1686308929/198
201: 名前は開発中のものです。 [] 2023/06/17(土) 22:01:25.57 ID:HbEfH4qC >>188 伸びる量の変数を用意する。 例:lengthとして、1または-1 イベントで、スペースキーが押されたら、lengthの符号を反転する。 伸縮処理をupdateに記述する。 伸びる値が最大になったら最大値を代入。 伸びる値が最小になったら最小値を代入。 http://mevius.5ch.net/test/read.cgi/gamedev/1686308929/201
205: 名前は開発中のものです。 [sage] 2023/06/18(日) 06:19:21.20 ID:qwXYLbJi おそらくスペースキー押してる間伸ばしたり縮めたりがやりたかったのでは なのでキーを離した時に伸縮の切り替えが必要だったとか あの文曖昧で伸縮機構作ってからキー処理詰めたらとしか言いようがない 最初>>192と同じ発想が出たが伸縮自体の処理内容によっては>>188で書かれていたので良かったりだから下手に書き込めぬ http://mevius.5ch.net/test/read.cgi/gamedev/1686308929/205
213: 名前は開発中のものです。 [sage] 2023/06/18(日) 19:48:44.06 ID:M9CS8+X5 >>188 つまりマウスのシングルクリックとダブルクリックの機能をスペースキーで欲しいと。 Godot?知らんので、擬似コードですが。 1回目と2回目の間隔が十分に短ければダブル判定、間隔が空きすぎるとシングル2回判定、かな。 1回目のクリックからカウントダウンを始めて、タイムアウト(0.2秒とか)しない内に再度押されたら2回判定。 int keystat ,spccnt ,spc keystat = input() if (keystat == 'spc') { if (spc == 0) { spc=1 spccnt=12 } if (spc == 1 && 0 < spccnt) { spc=2 } } if (0 < spccnt) { spccnt-- } if (spc ==1) 伸びる if (spc ==2) 縮む 状態が1と2しかないから、一度動き始めると止まれないけれど。キーリピート対策もしていないし。 http://mevius.5ch.net/test/read.cgi/gamedev/1686308929/213
220: 名前は開発中のものです。 [sage] 2023/06/19(月) 01:40:38.99 ID:jk7Q95e/ >>188 毎フレーム伸びる処理してるように見えるけど実際は縮む場合があるとか、何の切り替えかわからないtoggleとか、数字だけのログとか、自分で混乱しない? Godot環境ないから動くかは知らんけど、オレはバカ(近い将来の自分)が読んでもわかるよう、英語で意味が通るように書くことを心がけてるぞ #class名がpoleとかで何が伸び縮みするのか明白な前提 bool extracting = false func _process(delta): if Input.is_action_just_pressed("ui_accept"): extracting = !extracting if Input.is_action_pressed("ui_accept"): if extracting: extract() else: contract() func extract(): print("extracting") func contract(): print("contracting") http://mevius.5ch.net/test/read.cgi/gamedev/1686308929/220
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.029s