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

 



 
          





Рекомендуем:





Последние Файлы 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
[GM] The Big PEN1:LS v2.00 ... 04.12.2017
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
  • Страница 1 из 2
  • 1
  • 2
  • »
Модератор форума: Alcoholik  
[Manual]Создание 3D инф. домов/бизов
Matt_TuckДата: Пятница, 12.11.2010, 18:24 | Сообщение # 1
Местный
Группа: I'm V.I.P.
Сообщений: 710
Награды: 11
Город: Брянск
Репутация: 461
Замечания: 20%
Статус:
И так многие хотят научится создавать 3D информацию о доме/бизнесе.

ко всем new добавим:

Code
new Text3D:HouseLabel[MAX_HOUSES];
new Text3D:BizzLabel[MAX_BIZZES];
new Text3D:SBizzLabel[MAX_SBIZZES];

теперь где все #define добавим:

Code
#define MAX_HOUSES 122 // 122 - общее количество домов на сервере его можно узнать в new HouseInfo
#define MAX_BIZZES 6 // 6 - общее количество бизнесов на сервере его можно узнать в new BizzInfo
#define MAX_SBIZZES 12 // 12 - общее количество cбизнесов на сервере его можно узнать в new SBizzInfo

теперь где все forward добавим forward OnPropTextdrawUpdate();

продолжим
в public OnGameModeInit

добавим:

new PropertyString[128];

для домов

Code
for(new h = 0; h < sizeof(HouseInfo); h++)
        {
         if(HouseInfo[h][hOwned] == 0)
         {
             if(HouseInfo[h][hEntrancex] != 0.000000 && HouseInfo[h][hEntrancey] != -1250.349243 && HouseInfo[h][hEntrancez] != 13.546875)
             {
              format(PropertyString,sizeof(PropertyString),"Дом продаётся\n Цена:[$%d] \n Уровень:[%d]", HouseInfo[h][hValue], HouseInfo[h][hLevel]);
           HouseLabel[h] = Create3DTextLabel(PropertyString ,0x00FF00AA,HouseInfo[h][hEntrancex], HouseInfo[h][hEntrancey], HouseInfo[h][hEntrancez],25, 0, 1);
          }
         }
         if(HouseInfo[h][hOwned] == 1)
         {
             if(HouseInfo[h][hRentabil] == 0)
          {
           format(PropertyString,sizeof(PropertyString),"Владелец:[%s]\nУровень:[%d]",HouseInfo[h][hOwner],HouseInfo[h][hLevel]);
           HouseLabel[h] = Create3DTextLabel(PropertyString ,0x00FFFFAA,HouseInfo[h][hEntrancex], HouseInfo[h][hEntrancey], HouseInfo[h][hEntrancez],25, 0, 1);
          }
          else
          {
           format(PropertyString,sizeof(PropertyString),"Владелец:[%s]\nУровень:[%d]\nАрендная плата:[$%d]",HouseInfo[h][hOwner],HouseInfo[h][hLevel],HouseInfo[h][hRent]);
           HouseLabel[h] = Create3DTextLabel(PropertyString ,0x00FFFFAA,HouseInfo[h][hEntrancex], HouseInfo[h][hEntrancey], HouseInfo[h][hEntrancez],25, 0, 1);
          }
         }
        }

для бизнесов

Code
for(new h = 0; h < sizeof(BizzInfo); h++)
        {
         if(BizzInfo[h][bOwned] == 0)
         {
             format(PropertyString,sizeof(PropertyString),"Бизнес продаётся!\n Цена: $%d \n Уровень: %d \n", BizzInfo[h][bBuyPrice], BizzInfo[h][bLevelNeeded]);
          BizzLabel[h] = Create3DTextLabel(PropertyString ,0x00FF00AA,BizzInfo[h][bEntranceX], BizzInfo[h][bEntranceY], BizzInfo[h][bEntranceZ],50, 0, 1);
         }
         else if(BizzInfo[h][bOwned] == 1)
         {
          format(PropertyString,sizeof(PropertyString),"%s \n Владелец: %s \n Заместитель: %s \n Цена за вход: $%d. \n",BizzInfo[h][bMessage],BizzInfo[h][bOwner], BizzInfo[h][bExtortion], BizzInfo[h][bEntranceCost]);
          BizzLabel[h] = Create3DTextLabel(PropertyString ,0x00FFFFAA,BizzInfo[h][bEntranceX], BizzInfo[h][bEntranceY], BizzInfo[h][bEntranceZ],50, 0, 1);
         }
        }

теперь сбизнесы

Code
for(new h = 0; h < sizeof(SBizzInfo); h++)
        {
         if(SBizzInfo[h][sbOwned] == 0)
         {
          format(PropertyString,sizeof(PropertyString),"Бизнес продаётся!\n Цена: $%d \n Уровень: %d \n", SBizzInfo[h][sbBuyPrice], SBizzInfo[h][sbLevelNeeded]);
          SBizzLabel[h] = Create3DTextLabel(PropertyString ,0x00FF00AA,SBizzInfo[h][sbEntranceX], SBizzInfo[h][sbEntranceY], SBizzInfo[h][sbEntranceZ],30, 0, 1);
         }
         else if(SBizzInfo[h][sbOwned] == 1)
         {
          format(PropertyString,sizeof(PropertyString),"%s \n Владелец: %s \n Заместитель: %s \n Цена за вход: $%d. \n",SBizzInfo[h][sbMessage],SBizzInfo[h][sbOwner], SBizzInfo[h][sbExtortion], BizzInfo[h][bEntranceCost]);
          SBizzLabel[h] = Create3DTextLabel(PropertyString ,0x00FFFFAA,SBizzInfo[h][sbEntranceX], SBizzInfo[h][sbEntranceY], SBizzInfo[h][sbEntranceZ],30, 0, 1);
         }
        }

так теперь надо же сделать чтобы они обновлялись при продаже или изменение!

в конец мода добавляем public OnPropTextdrawUpdate()

Code
public OnPropTextdrawUpdate()
{
new PropertyString[128];
for(new h = 0; h < sizeof(HouseInfo); h++)
{
if(HouseInfo[h][hOwned] == 0)
{
if(HouseInfo[h][hEntrancex] != 0.000000 && HouseInfo[h][hEntrancey] != -1250.349243 && HouseInfo[h][hEntrancez] != 13.546875)
{
Delete3DTextLabel(HouseLabel[h]);
format(PropertyString,sizeof(PropertyString),"Дом продаётся\n Цена:[$%d] \n Уровень:[%d]", HouseInfo[h][hValue], HouseInfo[h][hLevel]);
HouseLabel[h] = Create3DTextLabel(PropertyString ,0x00FF00AA,HouseInfo[h][hEntrancex], HouseInfo[h][hEntrancey], HouseInfo[h][hEntrancez],25, 0, 1);
}
}
if(HouseInfo[h][hOwned] == 1)
{
if(HouseInfo[h][hRentabil] == 0)
{
Delete3DTextLabel(HouseLabel[h]);
format(PropertyString,sizeof(PropertyString),"Владелец:[%s]\nУровень:[%d]",HouseInfo[h][hOwner],HouseInfo[h][hLevel]);
HouseLabel[h] = Create3DTextLabel(PropertyString ,0x00FFFFAA,HouseInfo[h][hEntrancex], HouseInfo[h][hEntrancey], HouseInfo[h][hEntrancez],25, 0, 1);
}
else
{
Delete3DTextLabel(HouseLabel[h]);
format(PropertyString,sizeof(PropertyString),"Владелец:[%s]\nУровень:[%d]\nАрендная плата:[$%d]",HouseInfo[h][hOwner],HouseInfo[h][hLevel],HouseInfo[h][hRent]);
HouseLabel[h] = Create3DTextLabel(PropertyString ,0x00FFFFAA,HouseInfo[h][hEntrancex], HouseInfo[h][hEntrancey], HouseInfo[h][hEntrancez],25, 0, 1);
}
}
}
for(new h = 0; h < sizeof(BizzInfo); h++)
{
if(BizzInfo[h][bOwned] == 0)
{
Delete3DTextLabel(BizzLabel[h]);
format(PropertyString,sizeof(PropertyString),"Бизнес продаётся!\n Цена: $%d \n Уровень: %d \n", BizzInfo[h][bBuyPrice], BizzInfo[h][bLevelNeeded]);
BizzLabel[h] = Create3DTextLabel(PropertyString ,0x00FF00AA,BizzInfo[h][bEntranceX], BizzInfo[h][bEntranceY], BizzInfo[h][bEntranceZ],50, 0, 1);
}
else if(BizzInfo[h][bOwned] == 1)
{
Delete3DTextLabel(BizzLabel[h]);
format(PropertyString,sizeof(PropertyString),"%s \n Владелец: %s \n Заместитель: %s \n Цена за вход: $%d. \n",BizzInfo[h][bMessage],BizzInfo[h][bOwner], BizzInfo[h][bExtortion], BizzInfo[h][bEntranceCost]);
BizzLabel[h] = Create3DTextLabel(PropertyString ,0x00FFFFAA,BizzInfo[h][bEntranceX], BizzInfo[h][bEntranceY], BizzInfo[h][bEntranceZ],50, 0, 1);
}
}
for(new h = 0; h < sizeof(SBizzInfo); h++)
{
if(SBizzInfo[h][sbOwned] == 0)
{
Delete3DTextLabel(SBizzLabel[h]);
format(PropertyString,sizeof(PropertyString),"Бизнес продаётся!\n Цена: $%d \n Уровень: %d \n", SBizzInfo[h][sbBuyPrice], SBizzInfo[h][sbLevelNeeded]);
SBizzLabel[h] = Create3DTextLabel(PropertyString ,0x00FF00AA,SBizzInfo[h][sbEntranceX], SBizzInfo[h][sbEntranceY], SBizzInfo[h][sbEntranceZ],30, 0, 1);
}
else if(SBizzInfo[h][sbOwned] == 1)
{
Delete3DTextLabel(SBizzLabel[h]);
format(PropertyString,sizeof(PropertyString),"%s \n Владелец: %s \n Заместитель: %s \n Цена за вход: $%d. \n",SBizzInfo[h][sbMessage],SBizzInfo[h][sbOwner], SBizzInfo[h][sbExtortion], BizzInfo[h][bEntranceCost]);
SBizzLabel[h] = Create3DTextLabel(PropertyString ,0x00FFFFAA,SBizzInfo[h][sbEntranceX], SBizzInfo[h][sbEntranceY], SBizzInfo[h][sbEntranceZ],30, 0, 1);
}
}
return 1;
}

теперь в паблике OnGameModeInit ищем LinkVehicleToInterior и выше вставляем OnPropTextdrawUpdate();

теперь в public OnPropUpdate() ищем примерно вот такие строки

Code
if(idx == 0)
         {
          file2 = fopen("bizz.cfg", io_write);
         }
         else
         {
          file2 = fopen("bizz.cfg", io_append);
         }
         fwrite(file2, coordsstring);
         idx++;
         fclose(file2);

и ниже под fclose(file2); вставляем OnPropTextdrawUpdate();

теперь если кто то продаст или купит или изменит арендную стоимость комнаты и т.д. , то 3D тоже будет изменяться и не надо ждать следующего рестарта.




Не в возрасте дело,а в культуре общения и уровне интеллектуального развития

Если вам лижут жопу, не обольщайтесь, возможно это для смазки.

Twitter - Follow Me ;)
Подписываемся на мой Паблик


Сообщение отредактировал Matt_Tuck - Пятница, 12.11.2010, 19:21
SatelliteДата: Пятница, 12.11.2010, 19:23 | Сообщение # 2
Местный
Группа: Продвинутые
Сообщений: 622
Награды: 10
Город: Хмельницкий
Замечания: 20%
Статус:
С старого мода MyGame выдрал, там закомментины они были ;)
p.s: snoowker

Matt_TuckДата: Пятница, 12.11.2010, 19:42 | Сообщение # 3
Местный
Группа: I'm V.I.P.
Сообщений: 710
Награды: 11
Город: Брянск
Репутация: 461
Замечания: 20%
Статус:
Quote (Satellite)
С старого мода MyGame выдрал, там закомментины они были p.s: snoowker

неа там не такие были. это мною переделанные полностью


Не в возрасте дело,а в культуре общения и уровне интеллектуального развития

Если вам лижут жопу, не обольщайтесь, возможно это для смазки.

Twitter - Follow Me ;)
Подписываемся на мой Паблик
DiSEДата: Пятница, 12.11.2010, 19:44 | Сообщение # 4
Группа: I'm V.I.P.
Сообщений: 1759
Награды: 23
Город: Уфа
Репутация: 337
Замечания: 80%
Статус:
Почему это мануал? Напиши что CopyPaste
SatelliteДата: Пятница, 12.11.2010, 19:47 | Сообщение # 5
Местный
Группа: Продвинутые
Сообщений: 622
Награды: 10
Город: Хмельницкий
Замечания: 20%
Статус:
Quote (Matt_Tuck)
неа там не такие были. это мною переделанные полностью

Хз хз, я как помню был точь в точь такой-же + цвет такой и переменные назывались так-же.
Или-же ты выдрал из ravens roleplay

Matt_TuckДата: Пятница, 12.11.2010, 19:48 | Сообщение # 6
Местный
Группа: I'm V.I.P.
Сообщений: 710
Награды: 11
Город: Брянск
Репутация: 461
Замечания: 20%
Статус:
Quote (DiSE)
Почему это мануал? Напиши что CopyPaste

да я скопиластил это мне как то всё равно, главное чтобы новичкам легче было, а то есть которые даже вырезать не могут норм

Quote (Satellite)
Или-же ты выдрал из ravens roleplay

да от туда



Не в возрасте дело,а в культуре общения и уровне интеллектуального развития

Если вам лижут жопу, не обольщайтесь, возможно это для смазки.

Twitter - Follow Me ;)
Подписываемся на мой Паблик


Сообщение отредактировал Matt_Tuck - Пятница, 12.11.2010, 19:50
SatelliteДата: Пятница, 12.11.2010, 19:50 | Сообщение # 7
Местный
Группа: Продвинутые
Сообщений: 622
Награды: 10
Город: Хмельницкий
Замечания: 20%
Статус:
Quote (Matt_Tuck)
да от туда

Так бы и сразу :D
Ты ещё скриптер МГ или никсон так-же там поступает со всеми ???

DiSEДата: Пятница, 12.11.2010, 19:50 | Сообщение # 8
Группа: I'm V.I.P.
Сообщений: 1759
Награды: 23
Город: Уфа
Репутация: 337
Замечания: 80%
Статус:
Нету указания автора. Так что это тупой копипаст, и ещё ты присвоил это себе
Matt_TuckДата: Пятница, 12.11.2010, 19:51 | Сообщение # 9
Местный
Группа: I'm V.I.P.
Сообщений: 710
Награды: 11
Город: Брянск
Репутация: 461
Замечания: 20%
Статус:
Quote (DiSE)
Нету указания автора. Так что это тупой копипаст, и ещё ты присвоил это себе

я это не присваивал себе читай мой пост выше


Не в возрасте дело,а в культуре общения и уровне интеллектуального развития

Если вам лижут жопу, не обольщайтесь, возможно это для смазки.

Twitter - Follow Me ;)
Подписываемся на мой Паблик
DiSEДата: Пятница, 12.11.2010, 19:53 | Сообщение # 10
Группа: I'm V.I.P.
Сообщений: 1759
Награды: 23
Город: Уфа
Репутация: 337
Замечания: 80%
Статус:
Quote (Matt_Tuck)
неа там не такие были. это мною переделанные полностью

wtf?

Matt_TuckДата: Пятница, 12.11.2010, 19:54 | Сообщение # 11
Местный
Группа: I'm V.I.P.
Сообщений: 710
Награды: 11
Город: Брянск
Репутация: 461
Замечания: 20%
Статус:
Quote (Satellite)
Ты ещё скриптер МГ или никсон так-же там поступает со всеми ???

а ты тумаешь он вас просто так послал?


Не в возрасте дело,а в культуре общения и уровне интеллектуального развития

Если вам лижут жопу, не обольщайтесь, возможно это для смазки.

Twitter - Follow Me ;)
Подписываемся на мой Паблик
SatelliteДата: Пятница, 12.11.2010, 19:57 | Сообщение # 12
Местный
Группа: Продвинутые
Сообщений: 622
Награды: 10
Город: Хмельницкий
Замечания: 20%
Статус:
В конце сообщения вставь:
Code
[b]Автор:[/b] Chavo_Negro

Или как там этого создателя равенса :D

Добавлено (12.11.2010, 19:55)
---------------------------------------------

Quote (Matt_Tuck)
а ты тумаешь он вас просто так послал?

[off]Он ещё и написал что я не скриптер :D
А про того джереми остина - он реал не скриптер ;)[/off]

Добавлено (12.11.2010, 19:57)
---------------------------------------------

Quote (Matt_Tuck)
а ты тумаешь он вас просто так послал?

[off]По крайней мере я копи пастом на форумах не маюсь ;)
Если уж ты пол месяца делал диалог на 24/7, который за 3 минуты делается то я не знаю какой ты скриптер :crazy:[/off]



Сообщение отредактировал Satellite - Пятница, 12.11.2010, 19:57
Matt_TuckДата: Пятница, 12.11.2010, 19:57 | Сообщение # 13
Местный
Группа: I'm V.I.P.
Сообщений: 710
Награды: 11
Город: Брянск
Репутация: 461
Замечания: 20%
Статус:
Quote (Satellite)
Или как там этого создателя равенса

вроде бы его krik вкладывал... я хз истинного автора


Не в возрасте дело,а в культуре общения и уровне интеллектуального развития

Если вам лижут жопу, не обольщайтесь, возможно это для смазки.

Twitter - Follow Me ;)
Подписываемся на мой Паблик
SatelliteДата: Пятница, 12.11.2010, 19:58 | Сообщение # 14
Местный
Группа: Продвинутые
Сообщений: 622
Награды: 10
Город: Хмельницкий
Замечания: 20%
Статус:
[off]Крик выкладывал, а скачан мод с sa-mp com, я его ещё в мае качал....[/off]
Matt_TuckДата: Пятница, 12.11.2010, 20:00 | Сообщение # 15
Местный
Группа: I'm V.I.P.
Сообщений: 710
Награды: 11
Город: Брянск
Репутация: 461
Замечания: 20%
Статус:
Quote (Satellite)
По крайней мере я копи пастом на форумах не маюсь Если уж ты пол месяца делал диалог на 24/7, который за 3 минуты делается то я не знаю какой ты скриптер :crazy:

[off]Ну а что же ты когда скриптером там был что же ты всё не сделал норм, чтобы могли тобой игроки гордится и уважать тебя?[/off]


Не в возрасте дело,а в культуре общения и уровне интеллектуального развития

Если вам лижут жопу, не обольщайтесь, возможно это для смазки.

Twitter - Follow Me ;)
Подписываемся на мой Паблик


Сообщение отредактировал Matt_Tuck - Пятница, 12.11.2010, 20:00
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:





 


 


 
Хостинг от uCoz samp.at.ua