Създаване на флаш игра (4)
Здравейте.Ето предишната част. Да започваме ..
1. Създайте още един на него сложете код
stop();
result_txt.text = 2*uceleni- hit - relaod + 10

и динамично текстово поле result_txt . Това е формулата за изчисляване на резултата. Съвсем примерна е , можете да напишиете какво си искате :)
2. Като за начало направете още 2 текстови полета - uceleni_txt и nivo_txt . В тях ще се показва колко пилци са уцелени и на кое "ниво" сме.
3. Сега трябва да добавим още малко код към фрейм едно.
Създайте променлива която да съхранява броя на уцелените пилци с този код, като го добавите някъде (най добре най-отгоре)
var uceleni:Number = 0;

4.Във фунцкията savage(); намерете Tween = new mx.transitions.Tween(mc, "_x", easeType, begin, end, time, true); и добавете след него :

_root[ime].onPress = function() {
if (bullet_mc._currentframe == "8") {
} else {
this.gotoAndPlay(2);
uceleni += 1;
_root.uceleni_txt.text = uceleni;
}
};

_root[ime].onPress = function() { - Задаваме кода да се изпълни при натискане на "пилка".
if (bullet_mc._currentframe == "8") { - Проверяваме дали клипа, който съдържа куршумите не е на фрейм 8 (фрейма, на който няма куршуми). Ако е така не правим нищо.
this.gotoAndPlay(2); - Ако не пращаме пилето на фрейм 2 (анимацията на умиране, изчезване)
uceleni += 1;
_root.uceleni_txt.text = uceleni;
- Увеличаваме с едно стойноста на uceleni и задаваме текста на uceleni_txt да е стойноста на uceleni.
5.Намерете cursor2_mc.onEnterFrame = function() { и след него добавете :
if (uceleni<12) {
pticiEdno = 4;
nivo_txt.text = "1";
} else if (uceleni>12 and uceleni<40) {
pticiEdno = 5;
nivo_txt.text = "2";
} else if (uceleni>40 and uceleni<70) {
pticiEdno = 6;
nivo_txt.text = "3";
} else if (uceleni>70 and uceleni<110) {
pticiEdno = 7;
nivo_txt.text = "4";
} else if (uceleni>110 and uceleni<180) {
pticiEdno = 8;
nivo_txt.text = "5";
} else if (uceleni>180 and uceleni<250) {
pticiEdno = 9;
nivo_txt.text = "6";
} else if (uceleni>250) {
_root[ime]._visible = false;
_root[ime2]._visible = false;
clearInterval(edno);
gotoAndStop(2);
}

Добавяме кода там, защото и без това другия код в тази функция се изпълнява при всяко възпроизвеждане на фрейм, просто е удобно. Кода е лесен, вярвам че няма нужда от разяснения ..
*******************************************************************************
В урок 2 създахме функция която се изпълнява през определено време. Следвайки стъпките на урок 2 можете да направите няколко "партиди" птици, които да се появяват през различно време. Ще покажа какви промени следва да настъпят в кода ..
Да добавим нещо такова :

var pticiDve:Number = 4;
dve = setInterval(savage2, 4400);
function savage2() {
for (u=1; u<pticiDve; u++) {
ime2 = "b"+u+"_mc";
_root[ime2]._visible = true;
duplicateMovieClip(a_mc, ime2, u+20);
_root[ime2]._y = random(Stage.height);
_root[ime2]._yscale = _root[ime2]._xscale=random(70)+30;
Tween2 = new mx.transitions.Tween(_root[ime2], "_x", easeType, random(61), Stage.width+20, random(2)+2.3, true);
_root[ime2].onPress = function() {
if (bullet_mc._currentframe == "8") {
} else {
this.gotoAndPlay(2);
hit += 1;
_root.hit_txt.text = hit;
}
};
}
}

А след clearInterval(edno); трябва да добавите clearInterval(dve);
*******************************************************************************
В общи линии е това. Ако сте стигнали до тук благодаря за вниманието Smile
Ето фла файла.
Демо.
Урока участва в играта на inbg.eu
Задавайте си въпросите тук.
Наздраве.


/ Трябва да сте регистриран за да напишете коментар /
От: pacheto94
9:04 06-11-2009
нито файла ми отваря нито демото
1