2
private void occupiedcheck(Vector2 positionv, Texture2D positiont)
   {
       int xpos=(((int)positionv.X+100)/150);
       int ypos=(((int)positionv.Y+110)/150);
       for (int j = 0; j < 4; j++)
       {
           if (piecexarray[j] == xpos && pieceyarray[j] == ypos)
           {

           }
           else
           {
               positiont = Content.Load<Texture2D>("Graphics/Highlighter");
               break;
           }
       }
   }

上記の C# ゲーム用に作成した関数を見ることができます。関数の「else」部分がアクティブになったときに、渡されるテクスチャ (Texture2D positiont) を「Graphics/Highlighter」に変更したいと考えています。現在は機能しません。既存の Texture2D を関数に渡し、関数内の「Content.Load」メソッドを介して動的に変更できるようにするにはどうすればよいですか。

4

1 に答える 1

0

メソッド内でrefメソッド パラメータ キーワードを使用すると、「メソッド内のパラメータに加えられた変更は、制御が呼び出し元のメソッドに戻ったときにその変数に反映されます」:

private void occupiedcheck(Vector2 positionv, ref Texture2D positiont)
{
    // ...
}
于 2013-01-26T04:59:15.237 に答える