You are not logged in.
Возможно я чего-то не догоняю, но у меня обкод 05EE: key_pressed читает только буквенно - цифровые клавиши! А вот мне надо читать "Ctrl" "Shift" "Tab" "Ё" "\" "-" "=", они почему-то не читаются. Подскажите как решить данную проблему.
Offline
Возможно я чего-то не догоняю, но у меня обкод 05EE: key_pressed читает только буквенно - цифровые клавиши! А вот мне надо читать "Ctrl" "Shift" "Tab" "Ё" "\" "-" "=", они почему-то не читаются. Подскажите как решить данную проблему.
Предыдущий мой пост читай
Offline
Предыдущий мой пост читай
Я читал, но сказать что вообще не функционирует я не могу! Цифры и буквы читаются 100% чем и пользуюсь пока!!!
Offline
Lion, Kostyan - не знаю, мб я пользуюсь какой-то древней версией - но у меня всё отлично работает(поэтому я и не скачиваю новые). А мб это у вас старая версия - Alien иногда не отписывается, когда обновляет: попробуйте с главной страницы скачать
Last edited by Shag (03-07-2011 21:25)
Offline
Lion, Kostyan - не знаю, мб я пользуюсь какой-то древней версией - но у меня всё отлично работает(поэтому я и не скачиваю новые). А мб это у вас старая версия - Alien иногда не отписывается, когда обновляет: попробуйте с главной страницы скачать
Last edited by Alien (08-05-2010 13:32) - последнее обновление. Выложи пожалуйста свою версию
Offline
Offline
Где взять сорцы на CLEO VC?
Offline
Подскажите альтернативу опкода 0A30: repair_car 0@ для Vice City, или каким образом можно полностью отремонтировать машину при помощи скрипта.
Offline
Господа, для стим версии vc как-то можно cleo завести?
Offline
Недавно писал скрипт для Васи, работал с мейном, в нем использовал scm_func, т.е. опкод 05F5. Обнаружил вылет, когда идет этот опкод. Писал даже так:
05F5: call_scm_func @test params_count 0 ... :test 05F6: ret 0
Результат один и тот же - вылет. Речь повторяю идет о мейне.
И еще все таки прошу сделать клео сохранение для Васи и Трешки. Например, скрипт сохранение авто как в Четверке без этого не напишешь. Некоторые скрипты, например, которые надо вызвать только раз в игре тоже не напишешь итд.
I know everything and nothing...
Offline
Решил тут написать...
Щас с Gta-LC (трёшка на движке Вайса) вожусь (хотел с трёшкой, да решил Вайсовские машины в этом моде посмотреть, ну и заодно...) и чё-то Слео никак не идёт: spaceeinstein летом выложил main-strip и к нему VICESCM.INI для Сани Билдера - всё меняю, компилирую, а вот клео-скрипты не идут(зависает игра), Сани Билдер их декомпилирует, я даже исходник один скомпилировал (правда непростой скрипт, buybackyourweapons)...
Exception at address: 0x0046352F
EXE Version: gta-vc.exe 1.0 US - почему 1.0, стоит вроде даже 1.2 3 096 576 байт
Last opcode executed: 0201 is_player_near_car_3d_in_car
In thread: buyback
Registers -----------------------------------------------------
EAX: 0x0012FB5C EBX: 0x00E5E758 ECX: 0x0094AD28 EDX: 0x000000C2
ESI: 0x0094AD28 EDI: 0x00000034 EBP: 0x00000201 ESP: 0x0012FB38
EFLAGS: 10000001000000010
последние строчки в окне Script Trace мода:
0000D105: is_player_driving $var0008
0000D10A: jf @0000D6FE
0000D6FE: jump @0000D091
0000D091: wait 0
// THREAD "buyback"
000371B5: is_player_near_car_3d_in_car "", "", -288, "R", "YER", ""
Я, конечно понимаю, тотальный мод, многое через ...asi, но всё-таки...
Last edited by reute70 (06-11-2011 19:02)
Offline
В Gta-LC в dbug.scm делаю полоску повреждения машины draw_box_position (клео-скрипт в этот мод никакой не могу поставить, вылетает и почти всегда пишет последний исполняемый код 0003FD80: is_actor_near_point_3d_in_car 16777472, "", "", "", "", "", "", "" - это из отладчика мода, а до этой последней строки nop, nop, nop, хоть с 03A4: name_thread 'SPEEDO', хоть с wait 100, while true), она центрируется
пробывал такие опкоды
0342: set_text_draw_centered 0
03E4: set_text_draw_align_right 1
0345: set_text_draw_in_box 1
___пофиг...
Всех с Новым Годом!
Last edited by reute70 (31-12-2011 14:41)
Offline
В SA опкоды центрирования действуют только на текст, возможно здесь аналогичная ситуация.
Подобный вопрос рассматривался тут: http://modsforgta.ucoz.ru/forum/5-5-2507-16-1322563844
Last edited by Den_spb (31-12-2011 18:35)
Offline
С центрированием разобрался. Пытался запустить клео-скрипт, поменяв CHAR на ACTOR (вместо 00E0 - 00DF: actor $PLAYER_ACTOR driving и т.д.) - игра запустилась(а то сразу вылетала), но полоска не прорисовывалась, подумал что мешает mp3control (d3d8.dll - пишет верху номер текущего трека из всего количества) - снова стала сразу вылетать...
Вставил в майн:
____сначала создаю трейд
:LabelMAINTHREADCONT
0417: start_mission 0
004F: create_thread @LabelLCPORTLANDSAVE
004F: create_thread @LabelLCSTAUNTONSAVE
004F: create_thread @LabelLCSSVSAVE
004F: create_thread @LabelLCPORTLANDRESTART
004F: create_thread @LabelLCSTAUNTONRESTART
004F: create_thread @LabelLCSSVRESTART
004F: create_thread @LabelLCWastedHelpMonitor
004F: create_thread @LabelLCBustedHelpMonitor
004F: create_thread @LabelBistroWarp
004F: create_thread @LabelRandomAudio
004F: create_thread @LabelSpeed // и в других местах создавал, после create_thread @Label100REWARD
00D6: if 0
0256: player $PLAYER_CHAR defined
004D: jump_if_false @LabelMAINTHREADDEADEND
04BB: select_interiour 0 // select render area - VC has this, maybe will help load the city at startup
01B4: set_player $PLAYER_CHAR frozen_state 1 (unfrozen)
____________________затем сам код
:LabelSpeed
03A4: name_thread 'SPEEDO'
//0000:
:SPEED_10
wait 0
if
0256: player $PLAYER_CHAR defined
//056D: actor $PLAYER_ACTOR defined
else_jump @SPEED_10
if
00E0: player $PLAYER_CHAR driving
//00DF: actor $PLAYER_ACTOR driving
else_jump @SPEED_15
03C1: 0@ = player $PLAYER_CHAR car // 03C0: 0@ = actor $PLAYER_ACTOR car
//00D9: 0@ = actor $PLAYER_ACTOR car
02E3: 1@ = car 0@ speed
1@ *= 3.6 // floating-point values
008C: 1@ = float_to_integer 1@
0227: 3@ = car 0@ health
0017: 3@ /= 7.81
0085: 4@ = 3@
000E: 4@ -= 128 // integer values
0012: 4@ *= 3
0095: make 4@ absolute_integer
0093: 3@ = integer 3@ to_float //0092: 2@ = float 2@ to_integer
0087: 5@ = 3@ // floating-point values only
0015: 5@ /= 2.0 // floating-point values
000B: 5@ += 76.0 //000F: 5@ -= 64.0 // floating-point values
if
0029: 4@ >= 255 // integer values
then
0006: 4@ = 255 // integer values
end
0340: set_text_draw_color 200 0 0 255
033F: set_text_draw_letter_width_height 0.4 1.5
045A: text_draw_1number 3.0 414.0 'SPEEDX' 1@ // ~1~
0342: set_text_draw_centered 0
03E4: set_text_draw_align_right 1
0345: set_text_draw_in_box 1
038E: draw_box_position 5@ 1015.0 size 3@ 24.0 4@ 50 130 250//0-255 50 150
038E: draw_box_position 140.0 1015.0 size 128.0 24.0 20 0 90 100
:SPEED_15 // и без этой метки делал
0001: wait 250 ms
03F0: text_draw_toggle 0
jump @SPEED_10
//#####################################################################################
// END SPACE'S 041C WORKAROUND / BEGIN MISSIONS
//#####################################################################################
//-------------Mission 0---------------
после выезда с моста(новая игра, естессно) и повороте налево - зависает, еле через диспетчер процессов снимаю(на русском языке вобще после выхода из меню виснет), вот здесь, через несколько метров, я объезжал через доки, но при подъезде к чайнатаун висяк:
Last edited by reute70 (01-01-2012 17:23)
Offline
_Вобщем, в В Gta-LC поставил в майн status_text для спидометра...
Делал для Вайса клео-скрипт спидометра
{$CLEO} 0000: // и тут комментил wait 100 while true wait 0 if 0256: player $player_char defined then if 00E0: player $PLAYER_CHAR driving then 03C1: 0@ = player $PLAYER_CHAR car 02E3: 1@ = car 0@ speed 1@ *= 3.6 // floating-point values 008C: 1@ = float_to_integer 1@ 0227: 3@ = car 0@ health 0017: 3@ /= 7.81 0085: 4@ = 3@ 000E: 4@ -= 128 // integer values 0012: 4@ *= 3 0095: make 4@ absolute_integer 0093: 3@ = integer 3@ to_float //0092: 2@ = float 2@ to_integer 0087: 5@ = 3@ // floating-point values only 0015: 5@ /= 2.0 // floating-point values 000B: 5@ += 76.0 //000F: 5@ -= 64.0 // floating-point values if 0029: 4@ >= 255 // integer values then 0006: 4@ = 255 // integer values end //03F0: enable_text_draw 1 // и так делал, без text_draw_toggle //0340: set_text_draw_color 200 0 0 255 //033F: set_text_draw_letter_width_height 0.4 1.5 045A: text_draw_1number 3.0 414.0 'SPEEDX' 1@ // ~1~ 038E: draw_box_position 5@ 1015.0 size 3@ 24.0 4@ 50 130 250//0-255 50 150 038E: draw_box_position 140.0 1015.0 size 128.0 24.0 20 0 90 100 0001: wait 250 ms 03F0: text_draw_toggle 0 // и enable_text_draw 0 делал end end end
Чё ни так? Иногда, только в машину сядешь, зависает(полоска и значение скорости показывает), иногда едешь некоторое время - снова зависает. Новую игру начинаешь, садишься, едешь и вот тут(через несколько метров, там у меня наверху все "божки" зависает...
http://i30.fastpic.ru/big/2012/0104/5b/ … 336a5b.jpg
Last edited by reute70 (04-01-2012 20:56)
Offline
Чё-то у меня старый добрый скрипт спауна машин с последней версией VC CLEO.asi 1.1.1.6 не работает,
__кусок скрипта, декомпилированного
:NONAME_2 wait 50 if and Player.Defined($PLAYER_CHAR) 80E0: not player $PLAYER_CHAR driving else_jump @NONAME_406 if 05EE: key_pressed 0x4F // O else_jump @NONAME_296 005A: 6@ += 4@ // integer values (never used VC or GTA 3) if 6@ > 236 // integer values else_jump @NONAME_77 6@ = 130 // integer values :NONAME_77 if not 6@ >= 130 // integer values else_jump @NONAME_104 6@ = 236 // integer values :NONAME_104 if or 6@ == 180 // integer values 6@ == 181 // integer values 6@ == 231 // integer values else_jump @NONAME_146 jump @NONAME_2 :NONAME_146 02FD: text_2numbers_lowpriority 'SPAWN' 6@ 4@ 1500 flag 1 04C4: create_coordinate 0@ 1@ 2@ from_actor $PLAYER_ACTOR offset 0.0 3.0 -0.8 3@ = Actor.Angle($PLAYER_ACTOR) 3@ -= 270.0 // floating-point values Model.Load(6@) 038B: load_requested_models
думал, что игнорирует 05EE: key_pressed (посмотрел, в Сани билдере вобще старая версия стояла, но после замены и перекомпиляции - никаких перемен), а игнорировалось только нажатие кнопок на дополнительном цифр блоке (num 9, *) - на кнопках О и Р - прокатило (на чуть старее версии 1.0.1.5 всё хорошо)...
Offline
Возвращаясь к вопросу о 05EE, кто подскажет, где ошибка то?
.text:100021C5 sub_100021C5 proc near ; DATA XREF: sub_100029ED+1F8o
.text:100021C5
.text:100021C5 arg_0 = dword ptr 8
.text:100021C5
.text:100021C5 push ebp
.text:100021C6 mov ebp, esp
.text:100021C8 mov ecx, [ebp+arg_0]
.text:100021CB push 1
.text:100021CD call sub_100015A1
.text:100021D2 mov eax, Src
.text:100021D7 push dword ptr [eax]
.text:100021D9 xor ecx, ecx
.text:100021DB call dword_100047FC
.text:100021E1 xor ecx, ecx
.text:100021E3 test al, al
.text:100021E5 setnz cl
.text:100021E8 push ecx
.text:100021E9 mov ecx, [ebp+arg_0]
.text:100021EC call sub_100016CD
.text:100021F1 xor eax, eax
.text:100021F3 pop ebp
.text:100021F4 retn 4
.text:100021F4 sub_100021C5 endp
int __stdcall sub_100021C5(int a1)
{
char v2; // al@1sub_100015A1(a1, 1);
v2 = dword_100047FC(0, *(_DWORD *)Src);
sub_100016CD(a1, v2 != 0);
return 0;
}
Last edited by Sergey81 (03-11-2012 10:19)
Offline
Sergey81, конкретно в этой функции?
В Src что-то левое или вообще ничего.
Plugin-SDK https://github.com/DK22Pac/plugin-sdk
Discord-сервер по plugin-sdk и программированию в GTA
RU https://discord.gg/QEesDGb
ENG https://discord.gg/zaVqFQv
Offline
@DK22Pac - Ну я так понял это код опкода 05EE, который не может проверить, нажата ли клавиша шифт(или еще кучу других), а должен. Вот и хочу разобраться, что надо исправить в этом коде. А уж ошибка конкретно здесь или где-то еще я незнаю.
Offline
Возможно я чего-то не догоняю, но у меня обкод 05EE: key_pressed читает только буквенно - цифровые клавиши! А вот мне надо читать "Ctrl" "Shift" "Tab" "Ё" "\" "-" "=", они почему-то не читаются. Подскажите как решить данную проблему.
Такая же ерунда и дополнительные клавиши тоже не работают
Offline
В последней версии Клео вроде это пофиксили, у меня спаунер на доп цифровые клавиши работает
Кстати, спидометр для VC - LC в виде скрипта всё-таки доделал - надо было просто ВСЕ опкоды отрисовки (хотя тогда думал, что по умолчанию сойдёт) поставить, как и в коде GTA: Liberty City - откуда я нагло и тырил ! Спасибо ребятам !
Offline
В последней версии Клео вроде это пофиксили, у меня спаунер на доп цифровые клавиши работает
А... точно блин у меня версия 1.1.1.6 оказывается была. Поставил 1.1.1.7 - работают.
Offline
Да, наверно стоило опубликовать новость тут, что в мае вышло обновление для CLEO for GTA III и CLEO for Vice City (Silent постарался).
Скачать можно на сайте CLEO http://cleo.li/download
Offline