GTA: Modification Area

A website for the GTA modding scene

Search
 
 

Display results as :
 


Rechercher Advanced Search

Latest topics
» Big-game starts raising Schneider's profile
Sun Mar 04, 2012 2:28 am by lavivi

» [Help] cleo created lighting
Thu Oct 14, 2010 1:03 am by findmy012

» Mission Question
Thu Oct 14, 2010 1:02 am by findmy012

» [IV] Spoiler Script
Thu Oct 14, 2010 1:02 am by findmy012

» Mission mod [help]
Sat Sep 18, 2010 5:50 pm by jayd00

» Bc7 Mod Help
Fri Aug 20, 2010 11:19 am by pengpeng

» Found a bug
Fri Dec 18, 2009 4:22 am by _CJ360_

» [IV] Novitec Rosso 599 GTB
Tue Nov 17, 2009 4:22 pm by Kotton

» Hello/Guidance Request
Mon Oct 12, 2009 6:45 am by Adler

Navigation
 Portal
 Index
 Memberlist
 Profile
 FAQ
 Search
Affiliates
image

Image

Image

Image

Image

Image

Image

Image

Image

Image

image

Image

steve-m.com

Image


----- Русский -----

Если ваш сайт содержит большую коллекцию SCM/CLEO-скриптов (больше 16), напишите на мой e-mail, и я добавлю его в список. Приветствуются скрипты, которые не встречаются на других сайтах ... Спасибо. ))))


----- English -----

If your website has a big enough collection of SCM/CLEO scripts (more than 16) notify me by e-mail
, and I will add it to the list. The unique scripts are preferable ... Thank you. ))))

Log in

I forgot my password



December 2016
MonTueWedThuFriSatSun
   1234
567891011
12131415161718
19202122232425
262728293031 

Calendar Calendar


You are not connected. Please login or register

Изменение интерфейса

View previous topic View next topic Go down  Message [Page 1 of 1]

1 Изменение интерфейса on Sat Jun 20, 2009 11:37 am



Начиная с адреса 0x00BAB22C в памяти записаны 14 двойных слов (4 байта) для отрисовки одного из элементов интерфейса. Некоторые из них мне удалось изменить и увидеть, некоторые элементы неизвестны.

Первым идет цвет полоски здоровья. Чтобы установить ему новый RGBA, используйте следующий код:


Code:

0@ = 362041                // maplines
&0(0@,1i) = 0xFF00FFF0    // new RGBA


обратите внимание, последовательность байтов в записи обратная, т.е. сначала идет значение альфы (FF), потом B (00), G (FF), R (F0).

Вот остальные индексы:


Code:

0@ = 362035 - полоска здоровья
0@ = 362036 - деньги
0@ = 362037 - unknown
0@ = 362038 - шрифт из fonts.txd (стиль SA) (включая звезды поиска и полоску дыхания в воде)
0@ = 362039 - шрифт GTA3 (время, текст_боксы, полоска брони)
0@ = 362040 - задний фон для заголовков в меню (типа 'Pause menu', 'Stats')
0@ = 362041 - линии координат в меню карты.
362041..49  - unknown


Работает на обеих версиях (v1 и v1.01).
Кстати, 0904 возвращает как раз цвета элементов интерфейса.

Создание нового HUD


Давно обещанный мной скрипт изменения интерфейса, результат работы которого продемонстрирован здесь:

Скриншоту


Code:

{$CLEO}
0@ = 362035                // health bar
&0(0@,1i) = 0xFFFF9900

0@ = 362036                // hud.money
&0(0@,1i) = 0xFF00FFF0

0@ = 362038                // SA fonts
&0(0@,1i) = 0xFF0C0CFF

0@ = 362039                // GTA3 fonts
&0(0@,1i) = 0xFF3BB847

0@ = 362040                // fonts.menubackground
&0(0@,1i) = 0xFFFF0000

0@ = 362041                // maplines
&0(0@,1i) = 0xFF00FFF0

// text box top margin
0A8C: write_memory 0x859AD8 size 4 value 125.0 virtual_protect 1           
           
0005: $25 = 420.0
0005: $26 = 135.0
0005: $27 = 110.0
0004: $28 = 0x8000FFF0
0A8C: write_memory 0x583500 size 4 value 0xA499C4 virtual_protect 1  // $25
0A8C: write_memory 0x58A7C7 size 4 value 0xA499C4 virtual_protect 1  // $25
0A8C: write_memory 0x58A868 size 4 value 0xA499C4 virtual_protect 1  // $25
0A8C: write_memory 0x58A913 size 4 value 0xA499C4 virtual_protect 1  // $25
0A8C: write_memory 0x58A9C7 size 4 value 0xA499C4 virtual_protect 1  // $25
0A8C: write_memory 0x58A789 size 4 value 120 virtual_protect 1
0A8C: write_memory 0x58A88F size 4 value 120 virtual_protect 1
0A8C: write_memory 0x58A8D9 size 4 value 120 virtual_protect 1
0A8C: write_memory 0x58A98F size 4 value 120 virtual_protect 1
0A8C: write_memory 0x866B74 size 4 value 60.0 virtual_protect 1
0A8C: write_memory 0x866B78 size 4 value 80.0 virtual_protect 1
0A8C: write_memory 0x58F5FC size 4 value 0xA499C8 virtual_protect 1 // $26
0A8C: write_memory 0x58F5DC size 4 value 0xA499CC virtual_protect 1 // $27
0A8C: write_memory 0x866BB4 size 4 value 10000.0 virtual_protect 1
0A8C: write_memory 0x58F600 size 4 value 0x90909090 virtual_protect 1
0A8C: write_memory 0x58F499 size 4 value 0xA499CC virtual_protect 1 // $27

0A93: end_custom_thread


Насчет радара, это из-за конфликтов глобальных переменных. Если использовать этот скрипт на оригинальном майне, то переменная, в которой содержится новая высота радара ($25) будет перезаписана майном, и радар будет почти не виден. Я тестировал скрипт на стриппед, поэтому баг остался незамеченным.

View user profile http://gtamodding.com

View previous topic View next topic Back to top  Message [Page 1 of 1]

Permissions in this forum:
You cannot reply to topics in this forum