#1551 22-10-2009 09:50

GTASA
Registered: 13-09-2008
Posts: 476

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

Как сделать проверку, чтобы игра не вылетала, если в gta3.img не была найдена модель? Чтобы если модели не было, создавалась альтернативная указанная.

И еще кое-что. Как сделать, чтобы актер не обращал внимания на то, что на него целятся оружием?

И еще кое-что. Тут мне подсказали, что для случайного перехода на какой-то блок надо юзать "таблицы переходов". Не могли бы вы привести пример случайного перехода на метки, например,
:ass
:shut_up
:shit
:blahblahblah

а то в справке не очень понятно написано. Я надеюсь, эти "таблицы" будут функционировать примерно так же, как и 0208, или тут по-другому?

Last edited by GTASA (22-10-2009 11:35)

Offline

#1552 22-10-2009 12:30

Gyr
From: Серпухов
Registered: 03-02-2009
Posts: 246
Website

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

Таблицы переходов используются для целенаправленного перехода на нужную метку. А нужный тебе скрипт уже приводил  Sw[ee]t


Специально для тех, кто не умеет читать по английски. Мой ник читается как "ГИР"!!!
Народная мудрость:
Прежде чем задавать вопросы,ПОЧИТАЙ СПРАВКУ!!!!

Offline

#1553 23-10-2009 00:58

GTASA
Registered: 13-09-2008
Posts: 476

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

Точно. Извиняюсь, что не заметил. Теперь помогайте с остальным бредом, который я расписал выше.
И еще. Как сделать оружие актера невидимым?

Last edited by GTASA (23-10-2009 02:22)

Offline

#1554 23-10-2009 08:01

Alien
Registered: 12-10-2008
Posts: 564

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

чтобы сделать оружие невидимым, надо всунуть в руку другой невидимый объект.

070A: AS_actor 358@ attach_to_object 359@ offset 0.0 0.0 0.0 on_bone 6 16 perform_animation "NULL" IFP_file "NULL" time 1

Offline

#1555 23-10-2009 08:39

GTASA
Registered: 13-09-2008
Posts: 476

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

А зачем приклеивать актера к объекту?

Offline

#1556 23-10-2009 10:47

reute70
From: Средняя Волга
Registered: 22-08-2009
Posts: 182

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

GTASA wrote:

Как сделать проверку, чтобы игра не вылетала, если в gta3.img не была найдена модель? Чтобы если модели не было, создавалась альтернативная указанная.
...

А вобще получилось выводить название модели по ID ?

Offline

#1557 23-10-2009 12:35

GTASA
Registered: 13-09-2008
Posts: 476

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

Причем тут это?

Offline

#1558 24-10-2009 13:31

reute70
From: Средняя Волга
Registered: 22-08-2009
Posts: 182

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

Да маленько ошибся, это больше к 3Doomer`у ! clap

Offline

#1559 24-10-2009 13:58

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

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

я по прежнему жду какойнить помощи по созданию массива объектов и выводу названия модели.................


GIMS developer

Offline

#1560 24-10-2009 15:11

Gyr
From: Серпухов
Registered: 03-02-2009
Posts: 246
Website

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

Как сделать, чтобы актер не обращал внимания на то, что на него целятся оружием?

03BF: set_player $PLAYER_CHAR ignored_by_everyone 1
попробуй это


Специально для тех, кто не умеет читать по английски. Мой ник читается как "ГИР"!!!
Народная мудрость:
Прежде чем задавать вопросы,ПОЧИТАЙ СПРАВКУ!!!!

Offline

#1561 28-10-2009 17:20

DimP
Registered: 23-03-2009
Posts: 51

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

У меня небольшой вопросик, ответьте пожалуйста .
Как в SB индексировать массивы ?

Объявляю их так:

$x: array 40 of Float
$y: array 40 of Float
$z: array 40 of Float
$a: array 40 of Float
$b: array 40 of Float
$i: integer

Использую примерно так:

$a[$i] = 0.0
For $i = 1 To  30
04C4: store_coords_to $x[$i] $y[$i] $z[$i] from_actor $PLAYER_ACTOR with_offset $a[$i] 150.0 0.6
$a[$i] += 1.0
end

Игра вылетает после загрузки sad

Offline

#1562 28-10-2009 17:33

Alien
Registered: 12-10-2008
Posts: 564

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

глобальные переменные в cleo? Если да, то все дело в них.

Offline

#1563 28-10-2009 17:54

DimP
Registered: 23-03-2009
Posts: 51

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

Все нормально, когда я индексирую их вручную:

$a[1] = 1.0
$a[2] = 2.0
...
$a[10] = 10.0

04C4: store_coords_to $x[1] $y[1] $z[1] from_actor $PLAYER_ACTOR with_offset $a[1] 150.0 0.6
04C4: store_coords_to $x[2] $y[2] $z[2] from_actor $PLAYER_ACTOR with_offset $a[2] 150.0 0.6
...
04C4: store_coords_to $x[10] $y[10] $z[10] from_actor $PLAYER_ACTOR with_offset $a[10] 150.0 0.6

Так все работает,но очень неудобно.

Offline

#1564 28-10-2009 18:51

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

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

если это клео, про глобы забудь


GIMS developer

Offline

#1565 28-10-2009 22:08

Den_spb
From: Ленинград
Registered: 23-11-2008
Posts: 941
Website

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

DimP wrote:

Объявляю их так:

$x: array 40 of Float
$y: array 40 of Float
$z: array 40 of Float
$a: array 40 of Float
$b: array 40 of Float
$i: integer

Использую примерно так:

$a[$i] = 0.0
For $i = 1 To  30
04C4: store_coords_to $x[$i] $y[$i] $z[$i] from_actor $PLAYER_ACTOR with_offset $a[$i] 150.0 0.6
$a[$i] += 1.0
end

Игра вылетает после загрузки sad

А не многовато ли у тебя элементов в массивах (40*5=200)? Поправьте меня, если ошибаюсь, но их количество не может превышать количество локальных переменных(32+2).

Last edited by Den_spb (28-10-2009 22:09)

Offline

#1566 28-10-2009 23:01

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

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

именно)


GIMS developer

Offline

#1567 29-10-2009 05:32

DimP
Registered: 23-03-2009
Posts: 51

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

Получается на клео не сделать то что я хочу, мне нужно примерно 1000-2000 элементов crazy
и один-два двумерных масива.=(

Пытаюсь связать камеру(значения которые по адресам 00B6F248 и 00B6F258) и окружение(педы,машины,объекты) с помощью множества 04C4: и 86BD: опкодов, и из-за таких ограничений получилось сделать только небольшой кусочек экрана по x (00B6F258), на большее не хватает элементов=(
Может быть есть более рациональные способы ?
Помогите пожалуйста.

Last edited by DimP (29-10-2009 05:58)

Offline

#1568 29-10-2009 09:36

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

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

в мейне пиши


GIMS developer

Offline

#1569 30-10-2009 07:43

GTASA
Registered: 13-09-2008
Posts: 476

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

Здарова! Как сделать, чтобы в скрипте задать нажатие какой-то кнопки? Постараюсь объяснить как можно понятнее. Чтобы можно было присесть, прыгнуть, бежать, но не нажимая кнопок на клавиатуре, а чтобы задать нажатие кнопок в самом скрипте. Задать, когда она нажата, какая именно кнопка нажата, и когда будет отпущена. Очень надо!

Offline

#1570 30-10-2009 13:55

Alien
Registered: 12-10-2008
Posts: 564

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

Чтобы сэмулировать нажатие клавиши, нужно записать "не ноль" по адресу памяти 0xB73458 +  2*<номер клавиши>. Номера клавиш есть в справке.
Например, эмуляция нажатия клавиши приседания (когда на ногах):

0A8C: write_memory 0xB7347C size 2 value 0xFF virtual_protect 0

Last edited by Alien (30-10-2009 19:14)

Offline

#1571 30-10-2009 14:40

GTASA
Registered: 13-09-2008
Posts: 476

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

Не очень понял твое объяснение. Вот, например, чтобы сымитировать нажатие Прыжок, в какой список надо смотреть, что надо делать и т.д. Все на примерах. А то я не разбираюсь в адресах.

Offline

#1572 30-10-2009 16:04

Den_spb
From: Ленинград
Registered: 23-11-2008
Posts: 941
Website

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

Открываешь СБ-справку, раздел КЛЕО3-Список номеров клавиш к 0AB0. Находишь нужную клавишу и подставляешь её 16-ричный номер (столбик HEX) в приведённую формулу, в результате чего получаешь нужный адрес (складывать 16-ные числа можно стандартным Калькулятором).

Last edited by Den_spb (30-10-2009 16:06)

Offline

#1573 30-10-2009 16:50

Alien
Registered: 12-10-2008
Posts: 564

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

0ab0 - это совсем другое. Клавиши из опкода 00E1. Если нужны конкретные кнопки клавиатуры, то надо воспользоваться мэйновским способом "Проверка нажатия клавиш". Только вместо чтения памяти запись.

Offline

#1574 30-10-2009 17:49

mfisto
From: Russia Perm
Registered: 01-02-2008
Posts: 558
Website

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

Небольшая поправочка: в формуле "по адресу памяти 0xB73458 +  2*<номер клавиши>" номер клавиши-число десятичное,
далее, умножив его на 2, перводим его в шестнадцатиричное и прибавляем к шестнадцатиричному числу B73458,
далее ставим в получившемся числе перед ним символы 0x латиницей (это ноль а не O),
далее записываем его после write_memory
Вот и все.


I know everything and nothing...

Offline

#1575 01-11-2009 07:35

GTASA
Registered: 13-09-2008
Posts: 476

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

Хай. Я начал пользоваться quick opcode, плагин для создания своих текстов. Почему они у меня в игре появляются заглавными буквами, хотя я их так не вписываю? В чем может быть причина?

И вот еще. Как сделать, чтобы игрок оставлял при себе оружия, когда умирал? В игре, если дружить с подругой-копом, то оружия остаются после ареста. А как сделать, чтобы после смерти оставались оружия? А то найти не могу.

Last edited by GTASA (01-11-2009 09:54)

Offline

Board footer

Powered by FluxBB