2016-09-13 2 views
0
//Object 1: (draw event) 
draw_text(x,y, global.Score); 
draw_set_alpha(0.5); 
//Object 2: (draw_event) 
draw_text(x,y, global.highscore); 
draw_set_alpha(1); 

問題は、描画されたオブジェクト(スプライトなし)は、他のアルファを持つことがあり、 "draw_set_alpha();" (ステップイベントでも同じ)ゲームメーカー:異なるアルファを持つスタジオ - 2ドローオブジェクト

+0

描画する前にアルファを設定してください。ドロー後、アルファを1に設定してください(それ以外の場合は通常のスプライトを持つオブジェクトに影響します) – Dmi7ry

答えて

0

他のdraw_set_ ..メソッドと同様に、draw_set_alpha()メソッドを使用すると、プロジェクト全体の後にあるすべてのものを描画するためのグローバル設定が変更されます。

原則として、必要なものを描画した後、その設定を元に戻します。したがって、上のコードに従って、次のように使用してください。

//Object 1: (draw event) 
var prev_alpha = draw_get_alpha(); //getting current alpha settings 
draw_set_alpha(0.5); // setting needed alpha 
draw_text(x,y, global.Score); //drawing text with 0.5 alpha 
draw_set_alpha(prev_alpha); // setting alpha setting back 

// the same for the second object 
//Object 2: (draw_event) 
var prev_alpha = draw_get_alpha(); 
draw_set_alpha(1); 
draw_text(x,y, global.highscore); 
draw_set_alpha(prev_alpha); 
+0

GM:Sはとても馬鹿ですが...ありがとう – Raphael

+0

ありがとうございます。しかし、それは男性には役に立たない – Raphael

+0

私は一般的なアプローチを説明しました。私はあなたのプロジェクトの特定を知らない。だから、GM:Sのヘルプを見てみるか、もっと詳しい情報を私たちに提供してください。私はこの正確なコードを実際のプロジェクトにはチェックしなかったので、細部に間違いがあるかもしれません。私は自分のプロジェクトでこのようなことをしてくれました。 –

関連する問題