04:16
ОбновитьСмайлыУправление мини-чатом
МИНИ-ЧАТ
Главная страница!

 



 
        
Подвиcание SA-MP (2)
Max 20.02.2017 21:57
MYSQL Донат (2)
JasonGordon 08.02.2017 10:39
Зацените (12)
JasonGordon 26.01.2017 18:36
 





Рекомендуем:
Добавить IP: 95.172.59.51:7777





Последние Файлы GTA 4 Последние Файлы GTA-MP Реклама
Скрипт GTA 4 элементы Watch... 07.09.2014
Ferrari 360 Spider [EPM con... 13.12.2013
Porsche Cayenne Turbo 2012 ... 13.12.2013
Shelby Terlingua Mustang v1... 13.12.2013
Hamann Lamborghini Gallardo... 27.10.2013
Dgun (AvnanceRP,SampRP,Dimo... 19.03.2016
SAMP скрипт SX Events (MySQ... 03.03.2016
Карта ASL мэрия для SAMP се... 03.03.2016
AIM для SA-MP 0.3.7 22.02.2016
Скачать GTA SAMP 0.3.7 - Кл... 20.07.2015
Страница 1 из 11
Модератор форума: AXE, PrettySweetie 
Форум SAMP о мультиплеерах для GTA. »   » Скриптинг » Переход с Pawn на Lua. Часть 7 (Элементы и заморозка игрока)
Переход с Pawn на Lua. Часть 7
PrettySweetieДата: Пятница, 24.06.2011, 17:38 | Сообщение # 1
Местный
Группа: Продвинутые
Сообщений: 704
Награды: 19
Город: Нериак
Репутация: 1222
Замечания: 0%
Статус:
Переход с Pawno на Lua. Часть 7 — Элементы и заморозка игрока.

Элементы

Очередной небольшой урок.
В МТА пикапы, машины, игроки, маркеры на карте и т. п. - это элементы, и они объединены общими функциями. Всего, если мне изменяет память, то в МТА может быть 65535 элементов (вроде проскальзывала такая информация, если не так — то поправьте пожалуйста). То есть здесь нет деления по ограничениям как в сампе.

Для большинства элементов, с которыми вы будете сталкиваться, могут быть применены общие функции, такие как:
destroyElement
setElementData
setElementPosition

Заморозка игрока

Опять же если я все правильно помню, то в сампе можно заморозить игрока только так, чтобы он не смог ни только двигаться, но и камеру поворачивать. В МТА для этого есть удобная функция
Code

toggleAllControls ( player thePlayer, bool enabled, [bool gtaControls=true, bool mtaControls=true] )


gtaControls – функции ГТА
mtaControls – функции МТА

Пример:
Данный код заморозит игрока.
Code

toggleAllControls ( thePlayer, false )    


Полезная информация:
Я обычно делаю так:
Code

toggleAllControls ( thePlayer, false, true, false )

Это позволяет игроку крутить камеру, но не позволяет ходить.

Для разморозки игрока надо поставить данные аргументы в значение true.

Большой пример:
Code

function freezeThisDude ( thePlayer, freezeTime ) -- объявляем функцию с аргументами игрока и временем заморозки
     toggleAllControls ( thePlayer, false )         -- замораживаем игрока
     setTimer ( toggleAllControls, freezeTime, 1, thePlayer, true ) -- размораживаем игрока спустя какое то время
end – закрываем функцию
   
function freezeOnEnterVehicle ( theVehicle, seat, jacked ) -- объявляем функцию
     freezeThisDude ( source, 5000 ) -- вызываю первую функцию; 5000мс = 5 секунд
end -- закрываем функцию
addEventHandler ( "onPlayerVehicleEnter", getRootElement(), freezeOnEnterVehicle ) -- соединяем эвент и функцию


Дополнительно:
Информация об элементахх на вики

Добавлено (24.06.2011, 17:38)
---------------------------------------------
Забыл добавить:

P.S. Этот, и все остальные мои уроки написанны так, как я понимаю Lua и как мне удобно в нем работать


AirKiteДата: Пятница, 08.07.2011, 01:13 | Сообщение # 2
Долгожитель
Группа: I'm V.I.P.
Сообщений: 1671
Награды: 21
Город: Новосибирск
Репутация: 2070
Замечания: 0%
Статус:
Quote (Wolf_War)
P.S. Этот, и все остальные мои уроки написанны так, как я понимаю Lua и как мне удобно в нем работать

В целом всё равно молодец. + тебе заслуженный ;)



[1337GAMES] Easy RP
(SAMP SERVER, DEVELOPMENT, NOT SAMP-RP, SMART LIFE)


Jabber: airkite@qip.ru
[Addon] QuickBinder
[FS] Online Players Record
VintProgДата: Четверг, 01.12.2011, 23:09 | Сообщение # 3
Новенький
Группа: Пользователи
Сообщений: 5
Награды: 0
Город: Владивосток
Репутация: 15
Замечания: 0%
Статус:
еще бы статей)))))) Круто получается, все равно MTA лучше стал теперь чем SA-MP.


http://gtaexe.3dn.ru/ - Глобальный ресурс GTA
CoderДата: Четверг, 01.12.2011, 23:43 | Сообщение # 4
Постоялец
Группа: I'm V.I.P.
Сообщений: 339
Награды: 17
Город: Краснодар
Репутация: 770
Замечания: 0%
Статус:
[off]
Quote (VintProg)
MTA лучше стал теперь чем SA-MP

он всегда был лучше...[/off]

psychoДата: Воскресенье, 04.12.2011, 11:47 | Сообщение # 5
16 | 13
Группа: I'm V.I.P.
Сообщений: 327
Награды: 11
Репутация: 645
Замечания: 20%
Статус:
Quote (Coder)
он всегда был лучше...

Солидарен....

Жду ещё уроков. :)

CoolDarkДата: Понедельник, 05.12.2011, 18:39 | Сообщение # 6
Освоившийся
Группа: Пользователи
Сообщений: 83
Награды: 0
Город: Вологда
Репутация: 30
Замечания: 0%
Статус:
Хороший урок. Добавить нечего.
vodilasДата: Среда, 05.06.2013, 13:25 | Сообщение # 7
Новенький
Группа: Пользователи
Сообщений: 1
Награды: 0
Репутация: 0
Замечания: 0%
Статус:
Рибята как заморозить время???
PrettySweetieДата: Пятница, 14.06.2013, 18:32 | Сообщение # 8
Местный
Группа: Продвинутые
Сообщений: 704
Награды: 19
Город: Нериак
Репутация: 1222
Замечания: 0%
Статус:
vodilas, можно установить длину минуты очень большую. Я делал так: устанавливал длину минуты на очень много (вроде 1 час), и каждый час обнулял время до нужного мне.


Форум SAMP о мультиплеерах для GTA. »   » Скриптинг » Переход с Pawn на Lua. Часть 7 (Элементы и заморозка игрока)
Страница 1 из 11
Поиск:





 


 


 
Хостинг от uCoz SAMP-RUS.COM