[MAP][FAQ]Использование функции "for" - optimize RETEXTURE. - Форум - Cheat-Master.Ru | Читерский Форум | Читы для SAMP,CS,Minecraft,CoD,Warface | Продажа аккаунтов SAMP,WoT,Steam,Origin,Warface | Баги,статьи SAMP-RP,Advance-RP,Diamond-RP | Магазин аккаунтов SAMP-RP,Advance-RP,Diamond-RP,Steam,WoT,Warface

Страница 1 из 11
Модератор форума: Artem_Buero 
Форум » Pawno программирование » Карты | Map » [MAP][FAQ]Использование функции "for" - optimize RETEXTURE.
[MAP][FAQ]Использование функции "for" - optimize RETEXTURE.
ЧистыйДата: Суббота, 08.10.2016, 10:55 | Сообщение # 1
Новичок
Группа: Пользователи
Сообщений: 8
Статус: Offline
Войдите на сайт или зарегистрируйтесь для просмотра полного содержимого темы.

Всем привет, с вами Чистый!.

В сегодняшнем уроке, я бы хотел бы вам рассказать о использование функции "for", который оптимизирует замену текстур, а также уменьшить код замены текстур в вашем моде.
Как вы могли заметить, большинство замен текстур в работах мапперов используются в следующем варианте:
Код
new_rabota0 = CreateDynamicObject(0, 0, -0, 0, 0, 0, 0);
SetDynamicObjectMaterial(new_rabota0, 0, 0, "text", "text");
new_rabota1 = CreateDynamicObject(0, 0, -0, 0, 0, 0, 0);
SetDynamicObjectMaterial(new_rabota1, 0, 0, "text", "text");
и так далее.....

Ну есть же альтернативный вариант, допустим, мне нужно заменить все стены в моем интерьере одной текстурой, я не буду использовать функцию SetDynamicObjectMaterial после каждого объекта моей стены, а использую SetDynamicObjectMaterial всего 1 раз.
Вы спросите как же это можно сделать?
К примеру, я заменяю текстуру всех стен моего интерьера, на единую. Можно сделать в следующем варианте.
Код

new steni_interor[10]; - 10 стен в моем интерьере, счет в pawno всегда начинается с 0.
steni_interior[0] = CreateDynamicObject(19447, 0, 0, 0, 0, 0, 0);
steni_interior[1] = CreateDynamicObject(19447, 0, 0, 0, 0, 0, 0);
steni_interior[2] = CreateDynamicObject(19447, 0, 0, 0, 0, 0, 0);
steni_interior[3] = CreateDynamicObject(19447, 0, 0, 0, 0, 0, 0);
steni_interior[4] = CreateDynamicObject(19447, 0, 0, 0, 0, 0, 0);
steni_interior[5] = CreateDynamicObject(19447, 0, 0, 0, 0, 0, 0);
steni_interior[6] = CreateDynamicObject(19447, 0, 0, 0, 0, 0, 0);
steni_interior[7] = CreateDynamicObject(19447, 0, 0, 0, 0, 0, 0);
steni_interior[8] = CreateDynamicObject(19447, 0, 0, 0, 0, 0, 0);
steni_interior[9] = CreateDynamicObject(19447, 0, 0, 0, 0, 0, 0); - вот наши 10 стен для RETEXTURE.
for(new ido; ido < 9 ; ido++) SetDynamicObjectMaterial(steni_interior[ido], 0, id объекта, "модель текстуры", "наименование текстуры.");
А вот выше функция for, которая и заменить одной строкой все стены.
Разберем по подробнее: for - функция, new - новая переменная, ido - все id новой переменной steni_interior[10], от 0 до 10, steni_interior[ido] - указывает все объекты пронумерованные от 0 до 10, 0 - индекс, дальше понятно.

А теперь что у нас получилось:
Код

new steni_interor[10];
steni_interior[0] = CreateDynamicObject(19447, 0, 0, 0, 0, 0, 0);
steni_interior[1] = CreateDynamicObject(19447, 0, 0, 0, 0, 0, 0);
steni_interior[2] = CreateDynamicObject(19447, 0, 0, 0, 0, 0, 0);
steni_interior[3] = CreateDynamicObject(19447, 0, 0, 0, 0, 0, 0);
steni_interior[4] = CreateDynamicObject(19447, 0, 0, 0, 0, 0, 0);
steni_interior[5] = CreateDynamicObject(19447, 0, 0, 0, 0, 0, 0);
steni_interior[6] = CreateDynamicObject(19447, 0, 0, 0, 0, 0, 0);
steni_interior[7] = CreateDynamicObject(19447, 0, 0, 0, 0, 0, 0);
steni_interior[8] = CreateDynamicObject(19447, 0, 0, 0, 0, 0, 0);
steni_interior[9] = CreateDynamicObject(19447, 0, 0, 0, 0, 0, 0);
for(new ido; ido < 9 ; ido++) SetDynamicObjectMaterial(steni_interior[ido], 0, id объекта, "модель текстуры", "наименование текстуры.");

Используя функцию "for" мы смогли использовать функцию "SetObjectMaterial" и "SetDynamicObjectMaterial", 1 раз для одной текстуры, чем бесконечное количество раз, и тем самым мы сократили наш код замены текстур в моде, во много раз.
Если мы хотим заменить 2 индекса у одной текстуры одновременно, то можно сделать следующее:
Код

for(new ido; ido < 9 ; ido++) SetDynamicObjectMaterial(steni_interior[ido], 0, id объекта, "модель текстуры", "наименование текстуры.");
for(new ido; ido < 9 ; ido++) SetDynamicObjectMaterial(steni_interior[ido], 1, id объекта, "модель текстуры", "наименование текстуры.");
Индексы 0 и 1, функция "for", будет заменять только индекс, и не будет заново ставить данные объекты, не будет никаких мерцаний.

Данный способ, я ни где не встречал, с повышением опыта в MAP и замене текстур, додумался сам об этом способе, всем спасибо, с вами был Чистый.


Сообщение отредактировал Чистый - Суббота, 08.10.2016, 11:01
Ccылки
Найти еще что-нибудь в магазине:
Форум » Pawno программирование » Карты | Map » [MAP][FAQ]Использование функции "for" - optimize RETEXTURE.
Страница 1 из 11
Поиск:
Статистика Форума
Последнии темы Читаемые темы Лучшие пользователи Новые пользователи
[Вопрос] ЦП [Wyareri]

/delete [kot3nofake]

Подача заявок на "Чи... [Photoshoper]

Продажа игровой валюты [D... [danyadendi]

Emerald Life Role Play - ... [Dark116]

Вопросы и ответы [darkebot]

RakBot 0.6.4 - прокачка а... [taras123922]

[0.3.7][mod_sa] s0beit mo... [BLOOM228]

Samp RP [[CM]Mikki]

✭ Быстрая накрутка $$$ / ... [LbIbA______]

[1]>S0beit - pr9n project for samp 0.3.7 [9421]

[2]>RakBot 0.6.4 - прокачка аккаунтов без GTA [9108]

[3]>Часто задаваемые вопросы... [8091]

[4]>Advance-RP, Diamond-Rp, Amazing CRMP [7496]

[5]>Вопросы и ответы [6182]

[6]>[0.3.7][RUS] Sobeit modified by MishaN [6126]

[7]>Продажа вирт 1кк АМЕРП~ 400р АРП~400р ДРП~400р.СРП~150р. [5796]

[8]>SAMP-Bot 0.5.8.6 by Jamely [4580]

[9]>Бесконечное слово [4492]

[10]>[Samp-Rp.Ru]Обновлен список Админов (27.01.2016) [4112]

[11]>[CLEO] Вопрос - Ответ [4020]

[12]>Курилка [3109]

[1]>АК_47 [21942]

[2]>GеNius [6285]

[3]>romka619 [5458]

[4]>[CM]AGRESSOR [5028]

[5]>baffometi [4571]

[6]>Artem_Buero [3884]

[7]>Snake_Firm [3846]

[8]>[CM]Russel [3819]

[9]>iMaddy [2874]

[10]>Logan™ [2583]

[11]>zetkolya [2527]

[12]>Ch0c0Cube [2415]

[13]>[CM]Durman [2395]

[14]>[CM]ProKeyar [2358]

[15]>Sawyer [2285]

visiojl10 [03.12.2016|01:07]

Tolyasik23 [03.12.2016|01:06]

Kosyea1337 [03.12.2016|01:04]

Green_Sand [03.12.2016|00:58]

Tsikaridze [03.12.2016|00:47]

lebronjames [03.12.2016|00:39]

Zeddd [03.12.2016|00:34]

darkebot [03.12.2016|00:29]

OneGame2033 [03.12.2016|00:21]

semion89872 [03.12.2016|00:16]

alale [03.12.2016|00:12]

Dalerok [03.12.2016|00:10]

KudoFudo [03.12.2016|00:04]

Ilyau2017 [03.12.2016|00:02]

fata [03.12.2016|00:01]


CM Team © 2009-2016 Администрация не несёт ответственности за размещённые материалы. Условия пользования
Все материалы предоставлены в ознакомительных целях и администрация предлагает удалить их после ознакомления.

Положение о защите персональных данных на сайте, Пользовательское соглашение, Договор оказания услуг.