You are not logged in.
Pages: 1
Получилось!
Вообщем после долгих мучений вот что вышло:
// first person camera advanced by AlphaOmega
{$VERSION 3.1.0027}
{$CLEO .cs}
//-------------MAIN---------------
:start
thread 'CAM'
1@ = 0
2@ = 0
0000: NOP
0005: 3@ = 0.0
0005: 4@ = 0.0
0005: 5@ = 0.0
:begin
wait 0
0005: 6@ = 0.0
0005: 7@ = -.1
0005: 8@ = .69
if
Actor.Driving($PLAYER_ACTOR)
jf @check
:mode1check
if
0039: 1@ == 1
jf @mode1key
jump @mode1view
:mode1key
if and
00E1: key_pressed 0 13
0AB0: key_pressed 0x11
Actor.Driving($PLAYER_ACTOR)
jf @begin
jump @mode1on
:mode1on
1@ = 1
0059: 6@ += 3@
0059: 7@ += 4@
0059: 8@ += 5@
067C: put_camera_on_actor $PLAYER_ACTOR with_offset 6@ 7@ 8@ rotation 0.0 90.0 0.0 0.0 2
//0494: get_joystick 0 data_to 10@ 11@ 12@ 13@
//0093: 11@ = integer 11@ to_float
//0093: 12@ = integer 12@ to_float
//0093: 13@ = integer 13@ to_float
//0017: 11@ /= 2000.0
//0017: 12@ /= 2000.0
//0017: 13@ /= 2000.0
//005B: 16@ += 12@ // @ += @ (float)
//0063: 17@ -= 11@ // @ -= @ (float)
//005B: 18@ += 13@ // @ += @ (float)
2@ = 0
if
00E1: key_pressed 0 13
jf @begin
wait 500
jump @begin
:mode1view
if and
80E1: not player 0 pressed_key 5
80E1: not player 0 pressed_key 7
jf @mode1side
if
0039: 2@ == 1
jf @mode1correction
2@ = 0
jump @mode1on
:mode1side
if
84C8: not actor $PLAYER_ACTOR driving_flying_vehicle
jf @begin
015A: restore_camera
09AD: vehicle_camera_mode 0
2@ = 1
jump @begin
:mode1off
if and
00E1: key_pressed 0 13 // change camera button
jf @begin
02EB: restore_camera_with_jumpcut
09AD: vehicle_camera_mode 2
1@ = 0
jump @begin
:check
if
0039: 1@ == 1
jf @begin
015A: restore_camera
09AD: vehicle_camera_mode 2
0373: set_camera_directly_behind_player
1@ = 0
jump @begin
:mode1correction
wait 0
jump @mode1corrXup
:mode1corrXup
if and
0AB0: key_pressed 0x12
0AB0: key_pressed 0x26
Actor.Driving($PLAYER_ACTOR)
jf @mode1corrXdn
5@ += 0.1
jump @mode1on
:mode1corrXdn
if and
0AB0: key_pressed 0x12
0AB0: key_pressed 0x28
Actor.Driving($PLAYER_ACTOR)
jf @mode1corrYup
5@ -= 0.1
jump @mode1on
:mode1corrYup
if and
0AB0: key_pressed 0x11
0AB0: key_pressed 0x26
Actor.Driving($PLAYER_ACTOR)
jf @mode1corrYdn
4@ += 0.1
jump @mode1on
:mode1corrYdn
if and
0AB0: key_pressed 0x11
0AB0: key_pressed 0x28
Actor.Driving($PLAYER_ACTOR)
jf @mode1corrZup
4@ -= 0.1
jump @mode1on
:mode1corrZup
if and
0AB0: key_pressed 0x11
0AB0: key_pressed 0x25
Actor.Driving($PLAYER_ACTOR)
jf @mode1corrZdn
3@ -= 0.1
jump @mode1on
:mode1corrZdn
if and
0AB0: key_pressed 0x11
0AB0: key_pressed 0x27
Actor.Driving($PLAYER_ACTOR)
jf @nowindow
3@ += 0.1
jump @mode1on
:nowindow
if and
0AB0: key_pressed 0x11
0AB0: key_pressed 0x65
Actor.Driving($PLAYER_ACTOR)
jf @mode1off
03C0: 9@ = actor $PLAYER_ACTOR car
0730: car 9@ damage_component 4
0730: car 9@ damage_component 4
0730: car 9@ damage_component 4
0730: car 9@ damage_component 4
0730: car 9@ damage_component 4
0730: car 9@ damage_component 4
0730: car 9@ damage_component 4
0730: car 9@ damage_component 4
0730: car 9@ damage_component 4
0730: car 9@ damage_component 4
jump @mode1on
end_threadВключается и в машине, и в самолёте и во всех средствах передвижения.
Кнопка CTRL+КАМЕРА (контрль и кнопка, назначенная на смену вида камеры).
Отключается просто кнопкой КАМЕРА
Можно двигать точку просмотра:
CTRL+ВПРАВО - правее
CTRL+ВЛЕВО - левее
CTRL+ВВЕРХ - ближе
CTRL+ВНИЗ - дальше
ALT+ВВЕРХ - выше
ALT+ВНИЗ - ниже
При выходе из авто - режим отключается.
p.s.: ещё сделал скрипт включения/выключения камеры как в гта один (http://sannybuilder.com/forums/viewtopi … 3812#p3812)
p.p.s. (админам): в принципе, можно спокойно переносить тему в раздел с модификациями
p.p.p.s.: скрипт обновлён - произведено избавление от глобальных переменных в пользу локальных
Last edited by AlphaOmega (15-06-2008 10:21)
Offline
Спасибо,супер скрипт..
Offline
ИМХО так бы:
CTRL+ВВЕРХ - выше
CTRL+ВНИЗ - ниже
ALT+ВВЕРХ - ближе
ALT+ВНИЗ - дальше
а так кул
-=YariK=-
http://my-mods.org.ua/
Offline
ИМХО так бы:
CTRL+ВВЕРХ - выше
CTRL+ВНИЗ - ниже
ALT+ВВЕРХ - ближе
ALT+ВНИЗ - дальшеа так кул
Всё в твоих руках - меняй 11 на 12 и компиль. Всё же в опенсурсе дано.....
Offline
скажите где мне найти список клавиш
00E1: key_pressed 0 13
0AB0: key_pressed 0x11
для опкода 00E1 - в справке по санни
для опкода 0AB0 - в любом справочнике программиста - это virtual key codes системные (везде на винде одинаковы)
Offline
А можешь сделать чтоб когда едешь на мотоцикле или на самолете летишь, наклоняешь, а голова не наклоняется. Сделайте плиз чтоб например когда трюкач перевернули кверх ногами, и голова тоже оставалась с самолетом и нормально наклонялась. Сделайте на этом скрипте, либо просто скажите что добавить:
// 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---------------
thread 'CAM'
1@ = 0
2@ = 0
0000: NOP
3@ = 0.0
4@ = 0.0
5@ = 0.0
:CAM_57
wait 0
6@ = 0.0
7@ = -0.1
8@ = 0.69
if
Actor.Driving($PLAYER_ACTOR)
else_jump @CAM_398
if
1@ == 1
else_jump @CAM_132
jump @CAM_268
:CAM_132
if and
0AB0: key_pressed 67
0AB0: key_pressed 17
Actor.Driving($PLAYER_ACTOR)
else_jump @CAM_57
jump @CAM_163
:CAM_163
1@ = 1
0059: 6@ += 3@ // (float)
0059: 7@ += 4@ // (float)
0059: 8@ += 5@ // (float)
067C: put_camera_on_actor $PLAYER_ACTOR with_offset 6@ 7@ 8@ rotation 0.0 90.0 0.0 0.0 2
2@ = 0
if
0AB0: key_pressed 17
0AB0: key_pressed 88
else_jump @CAM_57
wait 500
jump @CAM_57
:CAM_268
if and
80E1: not player 0 pressed_key 5
80E1: not player 0 pressed_key 7
else_jump @CAM_323
if
2@ == 1
else_jump @CAM_438
2@ = 0
jump @CAM_163
:CAM_323
if
84C8: not actor $PLAYER_ACTOR driving_flying_vehicle
else_jump @CAM_57
Camera.Restore
09AD: set_vehicle_camera_mode 0
2@ = 1
jump @CAM_57
:CAM_359
if
0AB0: key_pressed 17
0AB0: key_pressed 88
else_jump @CAM_57
Camera.Restore_WithJumpCut
09AD: set_vehicle_camera_mode 2
1@ = 0
jump @CAM_57
:CAM_398
if
1@ == 1
else_jump @CAM_57
Camera.Restore
09AD: set_vehicle_camera_mode 2
Camera.SetBehindPlayer
1@ = 0
jump @CAM_57
:CAM_438
wait 0
jump @CAM_449
:CAM_449
if and
0AB0: key_pressed 17
0AB0: key_pressed 103
Actor.Driving($PLAYER_ACTOR)
else_jump @CAM_490
5@ += 0.1
jump @CAM_163
:CAM_490
if and
0AB0: key_pressed 17
0AB0: key_pressed 105
Actor.Driving($PLAYER_ACTOR)
else_jump @CAM_531
5@ -= 0.1
jump @CAM_163
:CAM_531
if and
0AB0: key_pressed 17
0AB0: key_pressed 104
Actor.Driving($PLAYER_ACTOR)
else_jump @CAM_572
4@ += 0.1
jump @CAM_163
:CAM_572
if and
0AB0: key_pressed 17
0AB0: key_pressed 98
Actor.Driving($PLAYER_ACTOR)
else_jump @CAM_613
4@ -= 0.1
jump @CAM_163
:CAM_613
if and
0AB0: key_pressed 17
0AB0: key_pressed 100
Actor.Driving($PLAYER_ACTOR)
else_jump @CAM_654
3@ -= 0.1
jump @CAM_163
:CAM_654
if and
0AB0: key_pressed 17
0AB0: key_pressed 102
Actor.Driving($PLAYER_ACTOR)
else_jump @CAM_695
3@ += 0.1
jump @CAM_163
:CAM_695
if and
0AB0: key_pressed 17
0AB0: key_pressed 101
Actor.Driving($PLAYER_ACTOR)
else_jump @CAM_359
03C0: 9@ = actor $PLAYER_ACTOR car
0730: car 9@ damage_component 4 // versionA
0730: car 9@ damage_component 4 // versionA
0730: car 9@ damage_component 4 // versionA
0730: car 9@ damage_component 4 // versionA
0730: car 9@ damage_component 4 // versionA
0730: car 9@ damage_component 4 // versionA
0730: car 9@ damage_component 4 // versionA
0730: car 9@ damage_component 4 // versionA
0730: car 9@ damage_component 4 // versionA
0730: car 9@ damage_component 4 // versionA
jump @CAM_163
end_threadИ скажите почему в моей версии отключается на Х, если я там поставил Ctrl + X?
Last edited by Noob (01-07-2008 01:04)
Offline
Дак я же спрашиваю "как сделать", представил готовый код для исправления ошибок, но не прошу же я многого, а малость, просто я если не знаю как делать.
Offline
Кто-нить помогите плиз!
Offline
if
0AB0: key_pressed 17
0AB0: key_pressed 88
почитай в справочниках как оформляются условия. если их больше одного надо ставить and или or.
Offline
Можете на моем скрипте переделать так, чтобы работало и когда чел не в тачке?
// 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---------------
thread 'CAM'
1@ = 0
2@ = 0
0000: NOP
3@ = 0.0
4@ = 0.0
5@ = 0.0
:CAM_57
wait 0
6@ = 0.0
7@ = -0.1
8@ = 0.69
if
Actor.Driving($PLAYER_ACTOR)
else_jump @CAM_398
if
1@ == 1
else_jump @CAM_132
jump @CAM_268
:CAM_132
if and
0AB0: key_pressed 67
0AB0: key_pressed 17
Actor.Driving($PLAYER_ACTOR)
else_jump @CAM_57
jump @CAM_163
:CAM_163
1@ = 1
0059: 6@ += 3@ // (float)
0059: 7@ += 4@ // (float)
0059: 8@ += 5@ // (float)
067C: put_camera_on_actor $PLAYER_ACTOR with_offset 6@ 7@ 8@ rotation 0.0 90.0 0.0 0.0 2
2@ = 0
if
0AB0: key_pressed 17
0AB0: key_pressed 88
else_jump @CAM_57
wait 500
jump @CAM_57
:CAM_268
if and
80E1: not player 0 pressed_key 5
80E1: not player 0 pressed_key 7
else_jump @CAM_323
if
2@ == 1
else_jump @CAM_438
2@ = 0
jump @CAM_163
:CAM_323
if
84C8: not actor $PLAYER_ACTOR driving_flying_vehicle
else_jump @CAM_57
Camera.Restore
09AD: set_vehicle_camera_mode 0
2@ = 1
jump @CAM_57
:CAM_359
if
0AB0: key_pressed 17
0AB0: key_pressed 88
else_jump @CAM_57
Camera.Restore_WithJumpCut
09AD: set_vehicle_camera_mode 2
1@ = 0
jump @CAM_57
:CAM_398
if
1@ == 1
else_jump @CAM_57
Camera.Restore
09AD: set_vehicle_camera_mode 2
Camera.SetBehindPlayer
1@ = 0
jump @CAM_57
:CAM_438
wait 0
jump @CAM_449
:CAM_449
if and
0AB0: key_pressed 17
0AB0: key_pressed 103
Actor.Driving($PLAYER_ACTOR)
else_jump @CAM_490
5@ += 0.1
jump @CAM_163
:CAM_490
if and
0AB0: key_pressed 17
0AB0: key_pressed 105
Actor.Driving($PLAYER_ACTOR)
else_jump @CAM_531
5@ -= 0.1
jump @CAM_163
:CAM_531
if and
0AB0: key_pressed 17
0AB0: key_pressed 104
Actor.Driving($PLAYER_ACTOR)
else_jump @CAM_572
4@ += 0.1
jump @CAM_163
:CAM_572
if and
0AB0: key_pressed 17
0AB0: key_pressed 98
Actor.Driving($PLAYER_ACTOR)
else_jump @CAM_613
4@ -= 0.1
jump @CAM_163
:CAM_613
if and
0AB0: key_pressed 17
0AB0: key_pressed 100
Actor.Driving($PLAYER_ACTOR)
else_jump @CAM_654
3@ -= 0.1
jump @CAM_163
:CAM_654
if and
0AB0: key_pressed 17
0AB0: key_pressed 102
Actor.Driving($PLAYER_ACTOR)
else_jump @CAM_695
3@ += 0.1
jump @CAM_163
:CAM_695
if and
0AB0: key_pressed 17
0AB0: key_pressed 101
Actor.Driving($PLAYER_ACTOR)
else_jump @CAM_359
03C0: 9@ = actor $PLAYER_ACTOR car
0730: car 9@ damage_component 4 // versionA
0730: car 9@ damage_component 4 // versionA
0730: car 9@ damage_component 4 // versionA
0730: car 9@ damage_component 4 // versionA
0730: car 9@ damage_component 4 // versionA
0730: car 9@ damage_component 4 // versionA
0730: car 9@ damage_component 4 // versionA
0730: car 9@ damage_component 4 // versionA
0730: car 9@ damage_component 4 // versionA
0730: car 9@ damage_component 4 // versionA
jump @CAM_163
end_thread
Offline
Pages: 1