問題タブ [haskell-sdl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
140 参照

haskell - Haskell + SDL、関数/状態の使用法を理解していない

最初に注意してください。問題が正確に何であるかがわからないため、この質問にタイトルを付ける方法がわかりません。

私はHaskell + SDLを少しいじっていて、立ち往生しています。私の GitHub リポジトリはこちら: https://github.com/kennycason/haskell_boxxle/

209 行目に次のコード行があります。

quit <- whileEvents $ modifyPlayerPos . handleKeyboard

プレーヤーだけを移動するだけで機能しますが、保存されている他のコンテンツ、つまり(つまり)GameDataに保存されているデータも変更できるようにしたいですRoomboxes = [Coord]

次の方法でループを開始します。

gDataしかし、ループに入った後、再びアクセスする方法が本当にわかりません。また、アクセスしたmodifyとしても、GameData (modifyPlayerPosなど) 内の他の値に対して行ったように関数を記述する方法もわかりません。

handleKeyboard に渡したい型を示すために、コピーして変更handleKeyboardしました。handleKeyboard2

私はモナドとHaskellにまだ慣れていないので、アドバイスをいただければ幸いです。私の質問が十分に明確でない場合はお知らせください。ありがとう!