Jump to content
Forumu Destekleyenlere Katılın ×
Paticik Forumları
2000 lerden beri faal olan, çok şukela bir paylaşım platformuyuz. Hoşgeldiniz.

flash cs6 sorusu


Öne çıkan mesajlar

Mesaj tarihi:
ödev olarak çocuklar için bir iphone uygulaması yapıyorum. aşağıdan balonlar çıkıyor kullanıcı tıklayıp patlatıyor. yukarıdan yok olana kadar tıklayamamışsa bir canı gidiyor.

bu balonların spawn süresi zamanla çabuklaşsın istiyorum. yani öyle hep aynı hızda devam etmesin ve devam ettikçe zorlaşsın oyun. kodum aşağıda. aslında bunu yapmamam lazım ama ödev olduğu için yapıyorum, bir oldurun be.

kod

import flash.events.Event;
import flash.utils.Timer;
import flash.events.TimerEvent;
import flash.display.MovieClip;

var score:int = 0;
var life:int = 3;
var finish:Boolean = false;

var zaman:Timer = new Timer(1000);
zaman.start();
zaman.addEventListener(TimerEvent.TIMER, yarat);

function yarat(e:TimerEvent){
var balon:Balloon = new Balloon();
balon.x = Math.random()*280;
balon.y = 500;
balon.gotoAndStop(Math.round(Math.random()*47));

addChild(balon);

balon.addEventListener(Event.ENTER_FRAME, hareket);
balon.addEventListener(TouchEvent.TOUCH_TAP, patlat);
balon.addEventListener(MouseEvent.CLICK, patlat);
}

function hareket(e:Event){
e.target.y -=15;

if(finish){
e.target.removeEventListener(Event.ENTER_FRAME, hareket);
removeChild(e.target as MovieClip);
}

if(e.target.y < -150){
if(life == 0){
zaman.stop();
zaman.removeEventListener(TimerEvent.TIMER, yarat);

gotoAndStop(1,"finish");
finish = true;
}else{
life--;
life_txt.text = life.toString();

e.target.removeEventListener(Event.ENTER_FRAME, hareket);
removeChild(e.target as MovieClip);
}
}
}

function patlat(e:Event){
e.target.removeEventListener(Event.ENTER_FRAME, hareket);
e.target.gotoAndPlay(52);
score += 1;
score_txt.text = score.toString();
}

Mesaj tarihi:
Ben buna benzer birşey yapmıştım.

Her 20 patlamada balonun spawn süresini azaltıyordum. %2 hızlanıyordu.

Sen 1000 MS vermisin spawn süresine.

yani spawn suresi * 0.98
Mesaj tarihi:
ben görsel iletişim tasarımı okuyorum ve bu konu alanımın dışında olduğundan kod nedir nasıl yazılır hiç aşina değilim. dediğini ekleyebilir misin yukarıdaki koda hatırlıyorsan?
Mesaj tarihi:
Bu kod işini görecektir. Flash ile denedim ama IOS da ne oluyor bilemedim.



import flash.events.Event;
import flash.utils.Timer;
import flash.events.TimerEvent;
import flash.display.MovieClip;

var oyunDurumu:int = 0;
var balonZaman:int = 1000;
var balonKatsayi:Number = 0.95;
var balonKopyasi:int = 1;
var puan:int = 0;
var hak:int = 3;
var topHizi:Number = 5;
var topHiziKatsayi:Number = 0.5;
var topLevelKatsayi:int = 10;

function basla(){

var balon:ballon = new ballon();
balon.x = Math.random()*280;
balon.y = 500;

addChild(balon);

balon.addEventListener(Event.ENTER_FRAME, hareket);
balon.addEventListener(MouseEvent.CLICK, patlat);

if(hak > 0){
setTimeout(basla,balonZaman);
} else {
life_txt.text = "0";
}

}

function hareket(e:Event){
e.target.y -=topHizi;

if(e.target.y < -150){
hak--;
e.target.removeEventListener(MouseEvent.CLICK, patlat)
e.target.removeEventListener(Event.ENTER_FRAME, hareket);
removeChild(e.target as MovieClip);
}
}



function patlat(e:Event){
puan += 1;

if((puan%topLevelKatsayi) == 0){
balonZaman = balonZaman * balonKatsayi;
topHizi = topHizi + topHiziKatsayi;
}

score_txt.text = puan.toString();
life_txt.text = hak.toString();
e.target.removeEventListener(Event.ENTER_FRAME, hareket);
removeChild(e.target as MovieClip);
}


score_txt.text = puan.toString();
life_txt.text = hak.toString();
this.basla();

Mesaj tarihi:
baştan yazmışsın sanırım, teşekkür ederim ama epey değiştirmişsin. o yüzden çalıştıramadım. ben koda bakınca anlamadığımdan kendi sahneme göre düzenleyemiyorum.

sadece tek bir yeri değiştirerek; örneğin

şurayı

var zaman:Timer = new Timer(1000)

ya da

şurayı

function hareket(e:Event){ e.target.y -=15;

değiştirerek yapılamaz mı bu iş?
Mesaj tarihi:
Senin kodun ile spawn süresini değiştiremezsin. ama alttaki kod ile hızını ayarlayabilirsin.


e.target.y -=15; burayı bir bir rakam ile çarparak hızlını arttırabilirsin.
Mesaj tarihi:
4Ever said:

Senin kodun ile spawn süresini değiştiremezsin. ama alttaki kod ile hızını ayarlayabilirsin.


e.target.y -=15; burayı bir bir rakam ile çarparak hızlını arttırabilirsin.


hızını zamanla arttırabilir miyim yoksa sabit mi olur yine? örneğin 5 saniyede veya 10 saniyede bir şu kadar artsın gibi bir şey diyebilir miyim?
Mesaj tarihi:
Senin kodun üzerinde güncelleme yaptım ama test edemedim. Kod aşağıda.


import flash.events.Event;
import flash.utils.Timer;
import flash.events.TimerEvent;
import flash.display.MovieClip;

var score:int = 0;
var life:int = 3;
var finish:Boolean = false;
var balonSayisi:int = 0;
var balonHiz:Number = 10;

var zaman:Timer = new Timer(1000);
zaman.start();
zaman.addEventListener(TimerEvent.TIMER, yarat);

function yarat(e:TimerEvent){
var balon:Balloon = new Balloon();
balon.x = Math.random()*280;
balon.y = 500;
balon.gotoAndStop(Math.round(Math.random()*47));
balonSayisi += 1;

addChild(balon);

balon.addEventListener(Event.ENTER_FRAME, hareket);
balon.addEventListener(TouchEvent.TOUCH_TAP, patlat);
balon.addEventListener(MouseEvent.CLICK, patlat);
}

function hareket(e:Event){

if((balonSayisi%10) == 0){
balonHiz = balonHiz * 1.05;
}

e.target.y -= balonHiz;

if(finish){
e.target.removeEventListener(Event.ENTER_FRAME, hareket);
removeChild(e.target as MovieClip);
}

if(e.target.y < -150){
if(life == 0){
zaman.stop();
zaman.removeEventListener(TimerEvent.TIMER, yarat);

gotoAndStop(1,"finish");
finish = true;
}else{
life--;
life_txt.text = life.toString();

e.target.removeEventListener(Event.ENTER_FRAME, hareket);
removeChild(e.target as MovieClip);
}
}
}

function patlat(e:Event){
e.target.removeEventListener(Event.ENTER_FRAME, hareket);
e.target.gotoAndPlay(52);
score += 1;
score_txt.text = score.toString();
}

×
×
  • Yeni Oluştur...