[CM]Jaxson |
Дата: Понедельник, 15.10.2012, 20:21 | Сообщение # 1
|
٩(̾●̮̮̃̾•̃̾)۶
Сообщений: 801
Статус: Offline
|
Здравствуйте уважаемые гости,а также пользователи портала CM. Автор Мануала Jaxson Я очень много времени искал темы по созданию закусочных как в сингле,но ничего толком не находил,видел много тем где в закусочных создавали пикапы затем меню этой закусочной и т.д.,вообщем ничего существенного.Очень много задавал вопросов по этой теме но мне говорили что "эта система требует много знаний и усилий" и что "код могут сделать только профессиональные скриптеры".И перечитав почти всю вики по samp мне в голову пришла гениальная мысль.И её я изложу для вас в своём уроке,на примере создания "Esplanade Pizza".Такого урока ещё не было тут точно. И так приступим!
Ко всем forward добавляем: И после того как мы добавили forward спускаемся в самый конец мода и вставляем следующее: Code public Eda() { for(new playerid = 0,mplayers = GetMaxPlayers(); playerid < mplayers; playerid++) { if(!IsPlayerConnected(playerid)) continue;
switch(GetPlayerInterior(playerid)) { case 1: { if(IsPlayerInRangeOfPoint(playerid,10, 365.6823,-9.7243,1001.8516)) SetPlayerShopName(playerid,"FDPIZA"); }
case 4: { if(IsPlayerInRangeOfPoint(playerid,10,286.800995, -82.547600, 1001.539978)) SetPlayerShopName(playerid,"FDPIZA"); }
case 6: { if(IsPlayerInRangeOfPoint(playerid,10,296.919983, -108.071999, 1001.569946)) SetPlayerShopName(playerid,"FDPIZA"); else if(IsPlayerInRangeOfPoint(playerid,10,316.524994, -167.706985, 999.661987)) SetPlayerShopName(playerid,"FDPIZA"); }
case 7: { if(IsPlayerInRangeOfPoint(playerid,10,314.820984, -141.431992, 999.661987)) SetPlayerShopName(playerid,"FDPIZA"); else if(IsPlayerInRangeOfPoint(playerid,10,302.292877, -143.139099, 1004.062500)) SetPlayerShopName(playerid,"FDPIZA"); else if(IsPlayerInRangeOfPoint(playerid,10,280.795104, -135.203353, 1004.062500)) SetPlayerShopName(playerid,"FDPIZA"); } } } return 1; } Сделали? хорошо,продолжаем создание нашей с вами "Esplanade Pizza" это создание входа и выхода. Ко всем new добавляем: Идём дальше, создаём сам вход/выход. Code public OnPlayerPickUpDynamicPickup(playerid, pickupid) Добавляем: Code else if(pickupid == pizzeria[0]) { SetPlayerShopName(playerid, "FDPIZA"); SetPlayerPos(playerid,371.9928,-131.8683,1001.4922); SetPlayerInterior(playerid,5); SetPlayerVirtualWorld(playerid,1); SetPlayerFacingAngle(playerid,1.4204); SetCameraBehindPlayer(playerid); }
else if(pickupid == pizzeria[1]) { SetPlayerPos(playerid,2636.2490,1849.5162,11.0234); SetPlayerInterior(playerid,0); SetPlayerVirtualWorld(playerid,0); SetPlayerFacingAngle(playerid,88.1270); SetCameraBehindPlayer(playerid); } Добавили? хорошо,идём далее,создаём сами пикапы (стрелочки). Code public OnGameModeInit() Добавляем: Code pizzeria[0] = CreateDynamicPickup(1318,23,2638.7876,1849.6722,11.0234,0,0,-1,100.0); // Вход с улицы pizzeria[1] = CreateDynamicPickup(1318,23,372.2168,-133.5247,1001.4922,1,5,-1,100.0); // Выход внутри инта делали? отлично,если вы всё сделали правильно то у вас должно получиться. [Вопрос]: Где находится созданная нами пиццерия и как внутри у нас должно получится? [Ответ]: Она находится в LV,выкладываю скрины ниже: http://s42.radikal.ru/i098/1209/f8/530e3b6afa85.jpg http://s018.radikal.ru/i526/1209/e8/026f2ae46c37.jpg http://s019.radikal.ru/i644/1209/e1/ae295d751e3c.jpg http://i061.radikal.ru/1209/d8/f4084d148e98.jpg Вот собственно и всё,говорю сразу извините за ошибки (если таковы имеются). Позже расскажу тут же как создавать другие закусочные на подобии этих,а щас спать... Если у вас возникнут вопросы либо ошибки пишите их сдесь не стесняйтесь)
[ Skype ] [ Профиль ] [ Mods Pack ] [ VK ] [ Геймеры ] Помогаю новичкам, по всем вопросом комне в Skype/VK. VK ВЗЛОМАН, НЕ РАБОТАЙТЕ СОМНОЙ. МНЕ ВСЁ ВЗЛОМАЛИ СКАЙП И ВК. СКАЙП ВОССТОНОВИЛ.
Сообщение отредактировал [CM]Jaxson - Понедельник, 15.10.2012, 20:21 |
|
|
|
Эльдар |
Дата: Вторник, 16.10.2012, 00:19 | Сообщение # 2
|
Советник
Сообщений: 672
Статус: Offline
|
Лучше сделал бы систему по типу /addzakucka и т.п Удобнее, чем в ручную всё это делать, а так молодец, что выложил
Продам инвайт в DOTA 2 - skype:e.l119
|
|
|
|