0

私は Objective-C/Cocoa のローグライク ゲームに取り組んでいます。なぜなら、ゲームに取り組むことが言語について学ぶための最良の方法であることが常にわかっているからです。ゲームをかなり進めましたが、問題が発生しています。

各 level.plist は、次のようにいくつか定義されています。

<key>Save Location</key>
<integer>0</integer>

それはそのようにつかまれています、私はまた、このコードはすべてうまくいっていると言いたいです:

NSObject* level = [mapDictionary_ objectForKey: kLevelNumberKey];

しかし、私のNSLog探索では、整数や有用な数値を取得する代わりに、何らかのオブジェクトを取得し、NSLogged のときに正しい値を返すことがわかりました。この値を整数にして、自分が望むように使用できるようにするにはどうすればよいでしょうか? NSObject*他に何も正しく機能しなかったため、私は使用しただけであることに注意してください。代わりに使用した場合=(int)、ポインター値などを取得します(1108608たとえば)。

簡単な解決策だと思います。よろしくお願いします。何が起こっているのかを正確に説明することを気にしないのであれば、それは素晴らしいことです. 私の概念の理解は、ほとんどの新参者よりも優れていますが、何が起こっているのか正確に常に興味があります. 何が起こっているのかわからなかったら、プログラミングを学んでも何の役に立つでしょう! このような他の状況についても、気をつけて/準備するために喜んでアドバイスしてください. アドバイスは本当にありがたいです。非常に長い間コードを書くつもりの人に送られます。私はこれほど長い間学ぶことを先延ばしにしました。私の唯一の後悔は、早く始めなかったことです。

何らかの理由で、これまでの私のゲームを試すことに興味がある場合:リンク私は現在、状態保存を実装する過程にあり、レベルはあなたが残したままになります。明らかにOS Xのみです。これまでのところ、私はそれをかなり誇りに思っていますが、私には長い道のりが残っています. コントロールはアプリにリストされています。

4

1 に答える 1

2

値はNSNumberオブジェクトです。メソッドintを使用して取得できます-intValue

于 2009-07-22T08:32:11.627 に答える