Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
ja:gdevelop5:tutorials:platform-game:5-add-coins-and-number-of-collected-coins [2019/09/21 10:36]
mightycraft [Display a score using a text object]
ja:gdevelop5:tutorials:platform-game:5-add-coins-and-number-of-collected-coins [2020/12/26 13:56] (current)
Line 84: Line 84:
 ## テキストオブジェクトを使用してスコアを表示 ## テキストオブジェクトを使用してスコアを表示
  
-### Add text object+### テキストオブジェクトの追加
  
-For now, the variable Score can't be seen so we can't verify that the score is increased (we could, using the [[gdevelop5:interface:debugger|Debugger]], but the player can't see it). +現時点では、変数「スコア」は表示されないため、スコアが増加したことを確認できません([[ja/gdevelop5:interface:debugger|デバッガ]]を使用しても、プレーヤーは見ることはできません) 
- +
-We need to use a Text object to display the value of the Score variable. Let's add a new object. This time choose `Text` when asked about which type of object to create:+
  
 +変数「スコア」の値を表示するには、テキストオブジェクトを使用する必要があります。新しいオブジェクトを追加しましょう。作成するオブジェクトのタイプについて尋ねられたときに「テキスト」を選択します。
 {{ :gdevelop5:tutorials:platform-game:screen_shot_2017-09-30_at_17.58.27.png?nolink |}} {{ :gdevelop5:tutorials:platform-game:screen_shot_2017-09-30_at_17.58.27.png?nolink |}}
  
-Change then the object properties so that the text is black and bigger than the default size:+次に、オブジェクトのプロパティを変更して、テキストが黒でデフォルトのサイズより大きくなるようにします。
 {{ :gdevelop5:tutorials:platform-game:screen_shot_2017-09-30_at_18.09.28.png?nolink |}} {{ :gdevelop5:tutorials:platform-game:screen_shot_2017-09-30_at_18.09.28.png?nolink |}}
  
-You can then place the object on the scene:+その後、オブジェクトをシーンに配置できます。
 {{ :gdevelop5:tutorials:platform-game:screen_shot_2017-09-30_at_18.20.23.png?nolink |}} {{ :gdevelop5:tutorials:platform-game:screen_shot_2017-09-30_at_18.20.23.png?nolink |}}
  
-### Changing the text layer+### テキストレイヤーを変更する
  
-If you launch the game, you can see that the Score text is displayed with the rest of the objects and its position is not fixed on the screen. +ゲームを起動すると、スコアテキストが残りのオブジェクトとともに表示され、その位置が画面上で固定されていないことがわかります。この問題は、ベースレイヤーの上にレイヤーを使用することで簡単に解決できます。
-We can easily solve this problem by using a layer on top of the base layer. Open the layer editor using this button: +
  
 +このボタンを使用してレイヤーエディターを開きます。
 {{ :gdevelop5:tutorials:platform-game:screen_shot_2017-09-30_at_18.34.33.png?nolink |}} {{ :gdevelop5:tutorials:platform-game:screen_shot_2017-09-30_at_18.34.33.png?nolink |}}
  
-The list of layers is shown, with only the base layer for now: +レイヤーの一覧が表示されますが、現時点ではベースレイヤーのみです。
 {{ :gdevelop5:tutorials:platform-game:screen_shot_2017-09-30_at_18.35.00.png?nolink |}} {{ :gdevelop5:tutorials:platform-game:screen_shot_2017-09-30_at_18.35.00.png?nolink |}}
  
-Click on the `+` button to add a layer. Enter "UI" for its name (UI stand for User Interface).+「+」ボタンを クリックしてレイヤーを追加します。名前に「UI」と入力します(UIはユーザーインターフェイスの略です)。
  
-Finally, move the text object to this new layer by selecting the text instance on the scene and in the properties on the left, select the UI layer:+最後に、シーンのテキストインスタンスを選択してテキストオブジェクトをこの新しいレイヤーに移動し、左側のプロパティでUIレイヤーを選択します。
 {{ :gdevelop5:tutorials:platform-game:screen_shot_2017-09-30_at_18.40.44.png?nolink |}} {{ :gdevelop5:tutorials:platform-game:screen_shot_2017-09-30_at_18.40.44.png?nolink |}}
  
-Make sure that the object is displayed somewhere visible on the screen, for example, put it on the top-left. The black rectangle on the scene editor represents the size of the window:+オブジェクトが画面上のどこかに表示されていることを確認してください。たとえば、左上に配置します。シーンエディターの黒い四角形は、ウィンドウのサイズを表します。
  
 {{ :gdevelop5:tutorials:platform-game:screen_shot_2017-09-30_at_18.42.46.png?nolink |}} {{ :gdevelop5:tutorials:platform-game:screen_shot_2017-09-30_at_18.42.46.png?nolink |}}
  
-### Display the score value+### スコアの値の表示
  
-Now that we have a text on our screen, it is time to make it display the value of the Score variable. +画面にテキストが表示されたので、Score変数の値を表示するようにします。新しいイベントを追加します。このイベントには条件はありません。つまり、ゲームのフレームが画面にレンダリングされるたびにアクションが実行されます(1秒間に約60回)。
-Add a new event. This event won't have any condition, meaning the action is going to be executed every single time a frame of the game is rendered on screen (about 60 times a second).+
  
-Add an action and choose the one in `Text Object` category called `Modify the text`.+アクションを追加し、テキスト変更のカテゴリから、テキストオブジェクト選びます。
  
-For the first parameter, choose the `Score` object, as it is this object that we want to update. +最初のパラメーターについては、スコアを更新したいオブジェクトを選択します。 
-For the second parameter, choose `= (set to)` operator (we want to set the text to a new value). +2番目のパラメーターには、= (set to)演算子を選択します(テキストを新しい値に設定します)。 
-Finally, the last parameter represents the new content of the text. It's a string expression that will be evaluated during the game by GDevelop when the action is run.+最後に、最後のパラメーターはテキストの新しいコンテンツを表します。これは、アクションの実行時にGDevelopによってゲーム中に評価される文字列式です。
  
-We can specify a text by writing it between quotes (like this: `"Hello World"`). But we can also use something called expressions. An expression is a function that is returning a certain value. In this case, we need the value of the Score variable and we want to use that value to update the content of the Text object. +テキストを引用符で囲んで指定することができます(このように:"Hello World")。ただし、式と呼ばれるものも使用できます。式は、特定の値を返す関数です。この場合、スコア変数の値が必要であり、その値を使用してテキストオブジェクトのコンテンツを更新する必要があります。式はより高度なトピックであるため、ここでは詳しく説明しません。
-Expressions are a more advanced topic so we won't go deep into it for now.+
  
-What you need to know for now is that in order to get the value of a scene variable, we need to use the expression `Variable(variableName)`. And as it is a number variable but we need the value as a text, we need to convert the value returned from this expression to a string. We can do that by using another expression called `ToString(valueToConvert)`+ここで知っておく必要があるのは、シーン変数の値を取得するために、変数(変数名)の式を使用する必要があるということです。また、スコアは数値変数ですが、テキストとしての値が必要なので、`ToString(変換式)`というように、式から返された値を文字列に変換する必要があります。これを行うには、ToString(Variable(スコア))という別の式を使用します。
-So the actual expression needs to look like this `ToString(Variable(Score))`.+
  
-Finally, we can add this expression after a static text using the `+` operator: `"Score : " + ToString(Variable(Score))` (note the double quotes surrounding the text).+最後に、「+」演算子を使用して静的テキストの後にこの式を追加できます(テキストを`"Score : " + ToString(Variable(スコア))`と、二重引用符で囲むことに注意してください)。
  
 {{ :gdevelop5:tutorials:platform-game:screen_shot_2017-09-30_at_18.58.12.png?nolink |}} {{ :gdevelop5:tutorials:platform-game:screen_shot_2017-09-30_at_18.58.12.png?nolink |}}
  
-Lots of other functions and expressions are available in GDevelop. When combined, you create powerful actions that do advanced work. You can find more expressions in the expression editor by clicking on the blue icon next to the value fields:+GDevelopでは、他の多くの関数と式を利用できます。組み合わせると、高度な作業を行う強力なアクションを作成できます。値フィールドの横にある青いアイコンをクリックすると、式エディターでさらに式を見つけることができます。
  
 {{ :gdevelop5:tutorials:platform-game:expression-icon.png?nolink |}} {{ :gdevelop5:tutorials:platform-game:expression-icon.png?nolink |}}
  
-Here is the final event: +最後のイベントは次のとおりです。
 {{ :gdevelop5:tutorials:platform-game:screen_shot_2017-09-30_at_18.59.31.png?nolink |}} {{ :gdevelop5:tutorials:platform-game:screen_shot_2017-09-30_at_18.59.31.png?nolink |}}
  
-You can preview the game, see that the score is shown and updated when you collect a coin!+ゲームをプレビューしましょう。コインをゲットすると、スコアが表示され更新されることを確認できます!
  
 {{ :gdevelop5:tutorials:platform-game:screen_shot_2017-09-30_at_19.00.24.png?nolink |}} {{ :gdevelop5:tutorials:platform-game:screen_shot_2017-09-30_at_19.00.24.png?nolink |}}
  
-## Bonus: making sure that collecting two coins at the same time works+##ボーナス:2つのコインを同時にゲットすることを確認する
  
-You might have noticed that if you collect two coins at the exact same time (for example, if two coins overlap), the score is only increased once. For example, if each coin is worth 100 points and you collect coins, the score will only go up to 100 instead of 200. The fix for this is easy and is something we haven't looked at yet: we're going to use an event called For Each Object. What we will do is tell the engine that for every single coin that was collected, add 100 to the score. +2つのコインをまったく同時に収集した場合(たとえば、2つのコインが重なった場合)、スコアは1回しか増加しないことに気づいたかもしれません。たとえば、各コインが100ポイントの価値があり、2つのコインを集めると、スコアは200ではなく100になります。これに対する修正は簡単ですが、まだ対応していません。 For Eachオブジェクトというイベントを使用します。行うことは、ゲットされたすべてのコインについて、スコアに100を加算することをエンジンに伝えることです。
- +
-To start, click the + button in the toolbar of the Events Editor:+
  
 +開始するには、イベントエディターのツールバーの「+」ボタンをクリックします。
 {{ :gdevelop5:tutorials:platform-game:gdevelop_5_2018-05-30_11-30-39.png?200 |}} {{ :gdevelop5:tutorials:platform-game:gdevelop_5_2018-05-30_11-30-39.png?200 |}}
  
-Select "for each object"+"for eachオブジェクト"を選択
 {{ :gdevelop5:tutorials:platform-game:2018-05-30_11-33-09.png?400 |}} {{ :gdevelop5:tutorials:platform-game:2018-05-30_11-33-09.png?400 |}}
  
-This will add an event at the bottom of the event page. Drag it up and make it a sub-event of the player collision with the coin:  +これにより、イベントページの下部にイベントが追加されます。それを上にドラッグして、コインとプレイヤーの衝突のサブイベントにします。
 {{ :gdevelop5:tutorials:platform-game:click-to-choose-4.png?600 |}} {{ :gdevelop5:tutorials:platform-game:click-to-choose-4.png?600 |}}
  
-Click to choose an object, and choose the Coin object. +クリックしてオブジェクトを選択し、コインオブジェクトを選択します。
 {{ :gdevelop5:tutorials:platform-game:click-to-choose2.png?600 |}} {{ :gdevelop5:tutorials:platform-game:click-to-choose2.png?600 |}}
  
-Now that you've added the object to the sub-event, let's move the actions down to the sub-event (so that the actions will be repeated for each coin that is picked by conditions).  +オブジェクトをサブイベントに追加したので、アクションをサブイベントに移動します(条件によって選択されたコインごとにアクションが繰り返されます)。
- +
-Hover over the first action, right-click and cut it, then hover over the action in the sub-event, right-click, and paste. Do this for the other two actions. You can also drag'n'drop actions, which is faster than cut-pasting them.+
  
 +最初のアクションにカーソルを合わせて右クリックして切り取り、サブイベントのアクションにカーソルを合わせて右クリックして貼り付けます。他の2つのアクションに対してこれを行います。アクションをドラッグアンドドロップすることもできます。これは、カットアンドペーストよりも高速です。
 {{ :gdevelop5:tutorials:platform-game:move-to-sub1.png?600 |}} {{ :gdevelop5:tutorials:platform-game:move-to-sub1.png?600 |}}
  
-This is what the final event should look like:  +最終的なイベントは次のようになります。
 {{ :gdevelop5:tutorials:platform-game:move-to-sub2.png?600 |}} {{ :gdevelop5:tutorials:platform-game:move-to-sub2.png?600 |}}
  
-Now run the game, and you will see that if you gather two coins at the same time, the score will be updated properly if you run on two coins at the exact same time.+ゲームを実行すると、2枚のコインを同時にゲットした場合、スコアが適切に更新されることがわかります。
  
-## Next step: add enemies+## 次のステップ:敵の追加
  
-Every platform game comes with enemies that you have to avoid or kill by jumping on them! Let's add some and see how we can make them move.+すべてのプラットフォーム型ゲームには、敵にジャンプして回避または殺さなければならない敵が存在しています! 
 +いくつか追加して、それらを動かす方法を見てみましょう
  
-➡️ Read **[[gdevelop5:tutorials:platform-game:6-add-enemies]]**! +➡️  **[[ja/gdevelop5:tutorials:platform-game:6-add-enemies||次のチュートリアルはこちら!]]**!