Помощ за Room_set_persistent(), Не работи... |
Здравейте ( Вход | Регистрация )
Помощ за Room_set_persistent(), Не работи... |
23:05:07, 28-January-2012, Saturday
Коментар
#1
|
|
|
Новодошъл ![]() Група: Потребител Коментари: 22 Регистриран: 29.12.11 Град: Враца Потребител № 1702 |
Привет на всички...
В момента всички стаи в играта ми са persistent. Проблема ми е, че след добавяне на още 5 пъти повече стаи лага ще стане умопомрачителен, за това реших да пооправя малко нещата, като persistent да е само стаята, в която се намира героя... И така. Ако героя влезе в room1 ползвам кода: room_set_persistent(room1,1) instance_create(16,400,obj_hero) global.location=1 Когато излезе от room1 и влезе в room2 използвам кода: room1: if(obj_hero.x<16){ room_set_persistent(room1,0) //destroy hero } room2: instance_create(784,400,obj_hero) room_set_persistent(room2,1) global.location=2 Ползвам location за други цели, които не са важни в момента. Проблема е: instance_create() се изпълнява. Все пак героя ми е в стаята. global.location се променя, защото това, за което го ползвам си работи. room_set_persistent() не се изпълнява... Не знам защо. Ползвам имената на стаите, които копирам от програмата, пробвах с 1/0 и true/false... Не знам вече какво да правя, но стаите не са persistent. Къде греша? -------------------- Monstrocity (beta) Поиграйте, коментирайте, 80% от функционалността е готова. Останалото ще се появи на по-късне етап. Съобщавайте за бъгове за да ги отстранявам. :)
|
|
|
|
![]() |
23:37:57, 28-January-2012, Saturday
Коментар
#2
|
|
![]() BEST ENTRY award - зад.1/2008 Група: VIP Коментари: 597 Регистриран: 19.04.07 Град: Kюстендил Потребител № 539 |
Май някои неща не са ти ясно, но не знам до каква степен ще ти ги обясня. Room persistent се изплозва, когато искаш всички променливи по дадена стая да се запазят след НАПУСКАНЕТО й. Демек ако в room0 си сложил обект player с координати 10, 10 и го преместиш на друго място (например 25,30), след това отидеш в room1 и се върнеш обратно в room0, то този обект (и всички други) няма да се е върнал на 10,10, а ще си стои на 25, 30. На кратко както си го оставил си остава така.
Колкото до "лага", за който говориш - според мен няма да го има понеже тук говорим само за заделяне по-голямо количество оперативна памет, а не работа на процесора. По твоя въпрос много ясно, че room0 няма да ти е pesistent, защото ти сам я правиш да е false при напускане на стаята. По друг начин казано: Отиваш в room1 - persistent = true; При напускане на room1 правиш persistent = false; Е току що ти сам го направи false. Говоря за този код: Цитат Когато излезе от room1 и влезе в room2 използвам кода: room1: if(obj_hero.x<16){ room_set_persistent(room1,0) //destroy hero } Обяснението се получи доста велико и разбираемо. Дано си разбрал. -------------------- "Последно: 18:05:07, 21.09.12" След две години мълчание пак проговори...
ИГРИ И ПРИМЕРИ НА САЙТА МИ!. |
|
|
|
psycho666 Помощ за Room_set_persistent() 23:05:07, 28-January-2012, Saturday
psycho666 Аз точно това искам. Докато съм в room1 и отида в ... 23:46:51, 28-January-2012, Saturday
TALANTO Мисля, че сега те разбирам.
Искаш да кажеш, че ин... 23:55:09, 28-January-2012, Saturday
psycho666 Цитат(TALANTO @ 23:55:09, 28-Jan... 00:00:22, 29-January-2012, Sunday
TALANTO За да не превръщаме форума в чат ти правя пример, ... 00:10:35, 29-January-2012, Sunday
psycho666 Как ще стане с глобални променливи? в смисъл не ми... 00:24:14, 29-January-2012, Sunday
TALANTO Направих примера с глобалните променливи. Доста гл... 00:42:48, 29-January-2012, Sunday![]() ![]() |
| Олекотена версия | Час: 07:16:57, 04.11.25 |