Map Editor  | 
	 
	 
Здравейте ( Вход | Регистрация )
Map Editor  | 
	 
	 
			
			  21:32:51, 04-April-2011, Monday
			
				 Коментар
					#1
					
				
			 
		 | 
	|
        	
				
					![]() Редовен потребител ![]() ![]() ![]() Група: Потребител Коментари: 102 Регистриран: 23.08.09 Град: Силистра. Потребител № 1490  | 
       
			
			 
				Значи незнам дали тази тема е за тук, но колкото и да опитвам немога да си направя Map Editor. 
			
			Играта ми е RPG в Map Editora да мога да слагам герой, магазин, дървета, да правя room height i room weight, да сменям Backgrounda на rooma и т.н. Да бъде все едно като в Game Maker слагаш обект там обект там, самоче искам като игра. Файла да може да се сейфа като някакъв формат, който ще чете оригиналната игра и това е. Моля ако знаете как помогнете. -------------------- Влезте в новият ми сайт : http://term1nat0r.netne.net/  | 
	
| 
			
			 | 
	|
![]()  | 
	
			
			  16:53:31, 05-April-2011, Tuesday
			
				 Коментар
					#2
					
				
			 
		 | 
	|
        	
				
					![]() Засмян тъпоъгълник :D Група: Администратор Коментари: 1790 Регистриран: 21.07.08 Град: Това е място, населено с много хора. FPS: 60 Потребител № 1116  | 
       
			
			 
				За редактор в общи линии ти трябват бази от данни, в които да се съхранява информацията за поставените обекти. 
			
			Тези бази от дании могат да бъдат под различна форма, примерно като масиви или обекти(не го препоръчвам) или ds_* функции. Да кажем, че използваш ds_list_* функциите. За всеки обект ти трябва да знаеш къде се намира - неговите координати х и у. Следователно се нуждаеш от два листа obektx и obekty. Да кажем, че си ги създал и вече си поставил няколко обекта. Листовете биха могли да имат следния вид: Цитат obektx: 30 42 15 60 obekty: 13 22 40 60 Тука трябва да се има впредвид едно важно нещо - стойностите си отговарят по двойки - първите две стойности (30 и 13) са за един и същи обект, вторите също и така има четири обекта с координати 30;13 42;22 15;40 60;60 - това е един лесен начин за логическо свързване на стойностите от двата листа. Но тук идва един проблем: кой обект какъв е? Играчът, враг, стена? Позицията сама по себе си не е достатъчна за обозначаване на това. За това се налага трети лист(или масив), който да обозначава видът на обекта: Цитат obektx: 30 42 15 60 obekty: 13 22 40 60 obektvid: igra4 vrag stena stena Това вече е необходимият минимум. Обаче пак изниква проблем - видът на обекта ако се съхранява под формата на низ заема много повече място, отколкото ако е като число(това става по-осезаемо, когато се налага да се запази картата с по-малък размер) и може да се сбърка - дали беше igra4 или geroi, zombi или vrag. Как се решава този проблем? Сравнително просто - вместо имена на обекти се използват индекси на обекти. 0 във базата данни obektvid ще отговаря на играчът, 1 на врагът, 2 на стената и т.н. За да се укаже това се нуждаем от още една база данни: Цитат obektime: igra4 vrag stena orajie npc obektx: 30 42 15 60 obekty: 13 22 40 60 obektvid: 0 1 2 2 Оbektime не е свързан с останалите три листа - той указва името на даден обект. Понеже "постави 0" или "постави 2" не ни говорят много, се използва този лист obektime, за да се заменят индексите на обектите с имената им("постави играч", "постави стена") - това е изцяло за потребителския интерфейс и не се запазва в картите. Ако всеки обект има и някаква начална стойност, която трябва да бъде зададена в левъледитора, за това трябва поредният лист Цитат obektime: igra4 vrag stena orajie npc obektx: 30 42 15 60 obekty: 13 22 40 60 obektvid: 0 1 2 2 obektzdrave: 100 35 50 50 obektposoka: 0 45 90 90 Останалата работа е свързана с функционалност на едитора за създаване и унищожаване на обекти, преместването и редактирането им. Потребителският интерфейс също трябва да е добър, за да е удобен едиторът за използване. Записването и зареждането се свежда единствено до записване и четене на данните от файл. Не е задължително да е текстов, може да е с какво си искаш разширение. Първият ред може да обозначава първият лист, вторият ред - вторият и т.н. Код 30 42 15 60 
				
				
				
			13 22 40 60 0 1 2 2 100 35 50 50 0 45 90 90 -------------------- Цитат Пешо: 4:53:46 Я недейти са карайти тука че да ни ва зашливйъ  | 
	
| 
			
			 | 
	|
 term1nat0r   Map Editor   21:32:51, 04-April-2011, Monday
 
 P.A.S._BG   Много добър въпрос! И на мене ми се въртеха та...   14:27:56, 05-April-2011, Tuesday
 
 term1nat0r   Аз имам идея как да стане, но нещо не ми се получа...   15:35:55, 05-April-2011, Tuesday
 
 term1nat0r   Да много благодаря за този отговор ще се опитам да...   17:01:27, 05-April-2011, Tuesday
 
 P.A.S._BG   Както винаги очакванията са 5 пъти по-прости. Все ...   22:20:01, 05-April-2011, Tuesday
 
 яверт   Чак пък висши математики не - това е един прост на...   10:43:17, 06-April-2011, Wednesday![]() ![]()  | 
	
| Олекотена версия | Час: 06:59:34, 04.11.25 |