Point mantığı Game Development

sahnemizi dinleyen bir event atıyoruz ve frame sayısına göre harket ettiriyoruz. Daha sonra sahneyi geçtiğinde sağa doğru dayıyoruz. Sonrasında butona tıkladığımızda eğer sahnede event silinmiş ise yeniden ekliyoruz. ve point ler sayesinde ilk pozisyonundan devam ettiriyoruz.
Game development ile ilgili güzel bir bilgi olabilir.

stage.addEventListener(Event.ENTER_FRAME, Ef);

var pointArray:Array = new Array();

function Ef(event:Event):void
{
	mc.x+=5;
	if(mc.x > stage.stageWidth - mc.width/2)
	{
		stage.removeEventListener(Event.ENTER_FRAME, Ef);
	}

	var points:Point = new Point(mc.x,mc.y);
	pointArray.push(points);
}

geriBtn.addEventListener(MouseEvent.CLICK, ClickGo);

function ClickGo(event:MouseEvent):void
{
	if(!stage.hasEventListener(Event.ENTER_FRAME))
	{
		trace("yok silinmiş.");
		stage.addEventListener(Event.ENTER_FRAME, Ef);
		mc.x = pointArray[0].x;
	}
}
Advertisements

Çift array’da çift for

Başlık biraz saçma oldu ama örnekden anlayabileceğinizi düşünüyorum 🙂


var SETUP_1 : int = 10;
var SETUP_2 : int = 20;
var SETUP_ARRAY : Array = [["ActionScript","as3","as2","as1"],["PHP","oop"],["c#","unity3d"],["Unity","Javascript","c#"],["Javascript","html5"],
						   ["Programming","as3"],["GameSkills","unity","c++","as3"],["UML","ok"],["OOP"],["DESIGN PATTERNS"]];

var i:int,j:int;

// 10 kere for'a sokuyoruz.
for(i = 0; i < SETUP_1; i++)
{
	trace("*********************************************** " + Order(i));

	// SETUP_ARRAY[i] on kere fora giriyor ve bize i'in ci değeri veriyor. Bu durumda 0 veriyor.
	// daha sonra aldığı değer kadar length'e giriyor ve yeniden forluyor.
	for(j = 0; j < SETUP_ARRAY[i].length; j++)
	{
		// aldığı değerleri yazdırıyor.
		// ilk for değeri 0 olduğu için ilk parantezleri alıyor ve j ile de içlerindeki değerleri alıp yazdırıyoruz.
		//trace(SETUP_ARRAY[i][j]);
		trace(SETUP_ARRAY[i].length + " i ", i+ " j ", j);
	}
}

// sıralama türünü belirtebilmek için böyle bir şey yapıyoruz. geriye yangi forda olduğunu belirtiyoruz.
function Order(val:int):String
{
	switch(val)
	{
		case 0 :
			return "-- İLK FOR!";
		break;

		case 1 :
			return "-- İKİNCİ FOR!";
		break;

		case 2 :
			return "-- ÜÇÜNCÜ FOR!";
		break;

		case 3 :
			return "-- DÖRDÜNCÜ FOR!";
		break;

		case 4 :
			return "-- BEŞİNCİ FOR!";
		break;

		case 5 :
			return "-- ALTINCI FOR!";
		break;

		case 6 :
			return "-- YEDİNCİ FOR!";
		break;

		case 7 :
			return "-- SEKİZİNCİ FOR!";
		break;

		case 8 :
			return "-- DOKUZUNCU FOR!";
		break;

		case 9 :
			return "-- ONUNCU FOR!";
		break;
	}

	return null;
}