#751 13-11-2008 18:14

Alien
Registered: 12-10-2008
Posts: 564

Re: Один вопрос

код длинный, но вот:

код убран

Не знаю с чем это связано, потому что криво появляются только те, которые находятся в бункере с скриншота - все остальные как положено...

Last edited by Alien (29-12-2008 19:55)

Offline

#752 13-11-2008 18:22

Alien
Registered: 12-10-2008
Posts: 564

Re: Один вопрос

и еще: в предыдущей версии (без прожекторов на башнях) все норм было. Вот код:

аналогично

Last edited by Alien (29-12-2008 19:56)

Offline

#753 15-11-2008 12:19

GTASA
Registered: 13-09-2008
Posts: 476

Re: Один вопрос

Друзья! Как дать педу, допстим, с переменоой 1@ быстрый бег? Быстрее, чем у СидЖэея? Дальше, как сделать, чтобы когда бежит он на меня, я палю в него, а он nxj,s не останавливался при попадании и не брыкался?

Last edited by GTASA (15-11-2008 12:26)

Offline

#754 16-11-2008 09:05

GTASA
Registered: 13-09-2008
Posts: 476

Re: Один вопрос

Фотографирование в любом месте. А как сделать, чтобы при нажатии на что-нибудь, появлялся объектив камеры?

// This file was decompiled using sascm.ini published by Seemann (http://sannybuilder.com/files/SASCM.rar) on 13.10.2007

{$VERSION 3.1.0027}
{$CLEO .cs}

//-------------MAIN---------------
0000: NOP 

:PHOTOS_1
03A4: name_thread "PHOTOS"
0006: 32@ =  0// integer values

:PHOTOS_2
0001: wait  0 ms
00D6: if  0
0038:   $ONMISSION ==  0// integer values
004D: jump_if_false @PHOTOS_2
0001: wait  1500 ms
00D6: if  1
0019:   32@ >  1500
00E1:   key_pressed  0  11
004D: jump_if_false @PHOTOS_2
09F1: $PLAYER_ACTOR  1132
0A1E: dump_screen  1
0002: jump @PHOTOS_2

Offline

#755 19-11-2008 12:40

Alien
Registered: 12-10-2008
Posts: 564

Re: Один вопрос

вот мой ОДИН вопрос: "можно ли из скрипта обращаться к внешнему файлу, например тестовому - производить чтение из него и запись?"

Offline

#756 20-11-2008 20:18

3Doomer
From: КаZан
Registered: 14-05-2008
Posts: 659
Website

Re: Один вопрос

GTASA wrote:

Фотографирование в любом месте. А как сделать, чтобы при нажатии на что-нибудь, появлялся объектив камеры?

// This file was decompiled using sascm.ini published by Seemann (http://sannybuilder.com/files/SASCM.rar) on 13.10.2007

{$VERSION 3.1.0027}
{$CLEO .cs}

//-------------MAIN---------------
0000: NOP 

:PHOTOS_1
03A4: name_thread "PHOTOS"
0006: 32@ =  0// integer values

:PHOTOS_2
0001: wait  0 ms
00D6: if  0
0038:   $ONMISSION ==  0// integer values
004D: jump_if_false @PHOTOS_2
0001: wait  1500 ms
00D6: if  1
0019:   32@ >  1500
00E1:   key_pressed  0  11
004D: jump_if_false @PHOTOS_2
09F1: $PLAYER_ACTOR  1132
0A1E: dump_screen  1
0002: jump @PHOTOS_2

Опкод 0159: camera_on_ped 215@ 15 2 , изменяй параметр 2 (непомню какое число нужно)





     2 Alien:
Да, можно:
0A9A: $hFILE = openfile "settings.ini" mode 0x72  // IF and SET
0A9E: writefile $hFILE size 128 from 0@
0A9D: readfile $hFILE size 2 to $150
0A9B: closefile $hFILE

Также в Quick Opcode есть много полезных опкодов (0B30 - 0B42)


GIMS developer

Offline

#757 21-11-2008 15:58

Alien
Registered: 12-10-2008
Posts: 564

Re: Один вопрос

3Doomer wrote:

Да, можно:
0A9A: $hFILE = openfile "settings.ini" mode 0x72  // IF and SET
0A9E: writefile $hFILE size 128 from 0@
0A9D: readfile $hFILE size 2 to $150
0A9B: closefile $hFILE

Также в Quick Opcode есть много полезных опкодов (0B30 - 0B42)

а где можно про это поподробнее почитать? Не очень понял насчет size... это номер строки в файле? или номер символа? или я тупой придурок? скажите мне правду:lol:

Offline

#758 21-11-2008 19:29

3Doomer
From: КаZан
Registered: 14-05-2008
Posts: 659
Website

Re: Один вопрос

чи тай    С Б    хе лп


GIMS developer

Offline

#759 23-11-2008 16:54

Digger
Registered: 23-11-2008
Posts: 2

Re: Один вопрос

Народ, подскажите как сделать чтоб при нажатии "Z" CJ садился и закрывал голову руками, а потом, при повторном нажатии "Z" вставал нормально?
Я вот сделал, нажимаю "Z" CJ садится, нажимаю опять "Z", а он продолжает сидеть=(:

// This file was decompiled using sascm.ini published by Seemann (http://sannybuilder.com/files/SASCM.rar) on 13.10.2007

{$VERSION 3.1.0027}
{$CLEO .cs}

//-------------MAIN---------------
0000: NOP 
thread 'HIDE' 

:HIDE_13
wait 0 
if 
   Player.Defined($PLAYER_CHAR)
else_jump @HIDE_13 
if and
   not Actor.Driving($PLAYER_ACTOR)
84AD:   not actor $PLAYER_ACTOR in_water 
   Player.Controllable($PLAYER_CHAR)
else_jump @HIDE_13 
wait 0 
0@ = 304546 
wait 0 
  &0(0@,1i) == 255 
else_jump @HIDE_13 
wait 0 
0812: AS_actor $PLAYER_ACTOR perform_animation "COWER" IFP_file "PED" 4.0 loopA 1 lockX 1 lockY 1 lockF 1 time -1 // versionB 
wait 0 
0@ = 304546 
wait 0 
  &0(0@,1i) == 255 
wait 1000 
0@ = 304546 
wait 0 
  &0(0@,1i) == 255 
else_jump @HIDE_13 
0812: AS_actor $PLAYER_ACTOR perform_animation "COWER" IFP_file "PED" 4.0 loopA 0 lockX 0 lockY 0 lockF 0 time 1 // versionB 
wait 2000 
jump @HIDE_13

И ещё, не по теме как включить русский язык на форуме?=)

Offline

#760 25-12-2008 20:20

XotaBi4b
From: Харьков
Registered: 13-09-2008
Posts: 87

Re: Один вопрос

У кого есть мануалы по Text Draw? Хочу научится делать менюшки такие как в аммо.
ЗЫ: В самп скриптинге -  это для меня как 2 пальца об асфальт smile

Offline

#761 25-12-2008 20:59

Seemann
Registered: 07-08-2006
Posts: 2,156

Re: Один вопрос

Читай в хелпе статью "Панель, или список товаров"

По Text_draw вот:
http://gtamodding.ru/wiki/Рисование_на_экране

Offline

#762 27-12-2008 19:40

Alien
Registered: 12-10-2008
Posts: 564

Re: Один вопрос

3Doomer wrote:

2 Alien:
Да, можно:
0A9A: $hFILE = openfile "settings.ini" mode 0x72  // IF and SET
0A9E: writefile $hFILE size 128 from 0@
0A9D: readfile $hFILE size 2 to $150
0A9B: closefile $hFILE

Также в Quick Opcode есть много полезных опкодов (0B30 - 0B42)

что за опкоды такие 0B30 - 0B42... У меня таких нет:rolleyes:

а вообще, прочитал справку... Вы уж сильно меня за непомерное любопытство не бейте:blush:

было написано: "...записывает в открытый файл определенное число байтов..."
было прочитано: ":wow::crazy::lol::rolleyes:"


{$cleo}
0000:
:0
wait 0
if
0A9A: 0@ = openfile "test.txt" mode 0x77  // IF and SET
jf @0
0A9E: writefile 0@ size 1024 from $1
0A9B: closefile 0@
0A93: end_custom_thread

Эффект:

  ДA                                  ъ       g                                                                                                                                                                       -                                          ґB`‹E ЎE АA  А?  А?  @@  Ђ@  Ђ@  Ђ@                                                                                                         Ђ=   =  Ђ<                                           q      &                                                      ВE
OРД  PA  ЂA{&#732;EёFУД  PA                                                                                   =*’C\ 
В  zD                               ЂФГ @°D   A                Ж   і! Ъ                         

Открыв этот файл в Hex Editor (лично я не знаю что это за хрень такая, но она как-то связана с программированием), получаем, что то, что в блокноте отображается символом есть двухзначное 16-ричное число. То есть 1 байт... В принципе, все понятно...
хотел попробовать записать в файл переменную строкового типа, но не знаю, сколько памяти она занимает и что нужно писать после size в 0A9E...

Last edited by Alien (27-12-2008 19:43)

Offline

#763 27-12-2008 19:56

Alien
Registered: 12-10-2008
Posts: 564

Re: Один вопрос

начинаю понимать...
исходя из соображений того, что 1 байт - 1 символ, и из того, что переменная '...' содержит до 15 символов написал:

{$cleo}
0000:
:0
wait 0
if
0A9A: 0@ = openfile "test.txt" mode 0x77  // IF and SET
jf @0
1@s = 'test'
0A9E: writefile 0@ size 15 from 1@
0A9B: closefile 0@
0A93: end_custom_thread

получил:

TEST

Действительно 15 символов... Остаток заполнился нулевыми битами...Только почему-то регистр букв изменился...
А с русскими буквами так прокатит? или там заморочки со всякими юникодами-кодировками?
И как мне записать в файл значения числового типа? Ведь 01H не есть символ "1"...

Offline

#764 27-12-2008 20:30

Seemann
Registered: 07-08-2006
Posts: 2,156

Re: Один вопрос

Регистр букв настраивается в опциях SB (меню Формат).
Число сохраняемых символов можно ограничивать, если изменить параметр size.
Насчет русских букв не знаю, надо тестировать.
Насчет чисел: если к цифре прибавить 0x30 получим ее ASCII-код. Т.е "0" - это 0x30, "1" - 0x31, "9" - 0x39. Исходя из этого попробуй придумать как сконвертировать строку в число или наоборот.

Offline

#765 28-12-2008 13:43

Alien
Registered: 12-10-2008
Posts: 564

Re: Один вопрос

у мну опять проблема:

{$CLEO}
0000:
repeat
wait 0
until player.Defined($player_char)
while fading
wait 0
end
1@ = 36
0093: 4@ = integer 1@ to_float 
div(4@,10)
0092: 5@ = float 4@ to_integer 
0513: show_text_box_1number 'SLOT_02' number 5@  // ~k~~VEHICLE_ENTER_EXIT~ Use Slot Machine $~1~
0A93: end_custom_thread

63fd8a30f0c8.jpg
Вообще, что делают эти опкоды 0092 и 0093? Особенно 0092: он отбрасывает дробную часть или округляет?

Offline

#766 28-12-2008 13:55

Alien
Registered: 12-10-2008
Posts: 564

Re: Один вопрос

Все, с этим разобрался. В DIV в качестве второго операнда должно стоять значение с точкой...

{$CLEO}
0000:
repeat
wait 0
until player.Defined($player_char)
while fading
wait 0
end
1@ = 36
0093: 4@ = integer 1@ to_float 
div(4@,10.0)
0092: 5@ = float 4@ to_integer 
0513: show_text_box_1number 'SLOT_02' number 5@  // ~k~~VEHICLE_ENTER_EXIT~ Use Slot Machine $~1~
0A93: end_custom_thread

Теперь все нормально...

Offline

#767 28-12-2008 13:59

Seemann
Registered: 07-08-2006
Posts: 2,156

Re: Один вопрос

div(4@,10.0)

не успел smile

Last edited by Seemann (28-12-2008 14:04)

Offline

#768 28-12-2008 15:16

Alien
Registered: 12-10-2008
Posts: 564

Re: Один вопрос

Seemann, ага:D
вот вывод целочисленного значения в файл:

{$cleo}
0000:
var
4@ : float
2@ : float
7@ : float
end
1@ = -36 //вот число, которое надо записать в файл   
:0
wait 0
if
0A9A: 0@ = openfile "test.txt" mode 0x77  // IF and SET  
jf @0
2@ = 1.0
3@ = 0
0093: 4@ = integer 1@ to_float 
if
1@ < 0
then
4@ *= -1.0
5@s = '-'
0A9E: writefile 0@ size 1 from 5@   
end
while 8024:   not  2@ > 4@ // (float) 
2@ *= 10.0
inc(3@)
end
2@ /= 10.0
4@ /= 2@
for 6@ = 3@ downto 1
0092: 5@ = float 4@ to_integer 
0093: 7@ = integer 5@ to_float  
7@ *= 10.0
inc(5@,48)
0A9E: writefile 0@ size 1 from 5@  
4@ *= 10.0  
4@ -= 7@ 
end
0A9B: closefile 0@ 
0A93: end_custom_thread

а как организовано хранение float?
первые 2 байта на целую часть, вторые на дробную? или как?

Last edited by Alien (28-12-2008 16:25)

Offline

#769 28-12-2008 17:06

listener
From: Vice City
Registered: 09-11-2006
Posts: 616
Website

Re: Один вопрос

@Alien - или как. IEEE754, single precision
http://en.wikipedia.org/wiki/IEEE_754

Offline

#770 28-12-2008 17:47

Alien
Registered: 12-10-2008
Posts: 564

Re: Один вопрос

пнятненько...:crazy:
почти как экспонинциальное представление числа:rolleyes:
в одном бите расположен знак, еще в нескольких мантисса и в паре битов показатель экспоненты:wow:
мне нужно знать в каких конкретно битах что расположено...

Offline

#771 28-12-2008 17:50

Alien
Registered: 12-10-2008
Posts: 564

Offline

#772 28-12-2008 18:02

Alien
Registered: 12-10-2008
Posts: 564

Re: Один вопрос

все нашел:

Формат числа таков:
старший бит = знак,
8 бит = порядок + 127 (127=смещение),
младшие = мантисса.

Число = 1,мантисса * 2^порядок

Offline

#773 28-12-2008 20:04

Seemann
Registered: 07-08-2006
Posts: 2,156

Re: Один вопрос

Не надо мультипостить!

Offline

#774 29-12-2008 19:47

3Doomer
From: КаZан
Registered: 14-05-2008
Posts: 659
Website

Re: Один вопрос

уберите плизки те коды вверху страницы...она 5 минут грузится!!!


GIMS developer

Offline

#775 29-12-2008 20:14

Seemann
Registered: 07-08-2006
Posts: 2,156

Re: Один вопрос

Мы просто начнем новую страницу!

Offline

Board footer

Powered by FluxBB