#1 13-09-2010 18:03

DrKillJoy
Registered: 24-08-2010
Posts: 9

Помогите со сменой модели пресонажа!

Нуждаюсь в вашей помощи!!! Хочу заменить CJ на другого актера (точнее модель) только чтобы был целиком, тоесть не смена одежды, а замена модели. Вот нашёл опкод (09C7: change_player $PLAYER_CHAR model_to #SPECIAL01)  и предварительно загрузил персонажа, а игра непашет.:mad: Может кто знает, в чем ошибка. Буду очень благодарен!!!

Offline

#2 13-09-2010 20:04

~AquaZ~
Registered: 01-03-2010
Posts: 726

Re: Помогите со сменой модели пресонажа!

а игра непашет

Не с глаголами пишется раздельно. А в чём заключается то, что игра "непашет"?

Offline

#3 14-09-2010 08:22

DrKillJoy
Registered: 24-08-2010
Posts: 9

Re: Помогите со сменой модели пресонажа!

В тот момент когда должен смениться скин (модель) игра вываливается в widows с ошибкой. По скрипту вроде все верно(хотя ранее не пробовал!) Может дело в том, что я игру MapCleaner – ом почистил (там в составе был новый, чистый Main)  Вот, что у меня получилось:
// This file was decompiled using sascm.ini published by Seemann (http://sannybuilder.com/files/SASCM.rar) on 04.08.2007
DEFINE OBJECTS 1
DEFINE OBJECT SANNY BUILDER 3.00     

DEFINE MISSIONS 0

DEFINE EXTERNAL_SCRIPTS 0 // Use -1 in order not to compile AAA script

DEFINE UNKNOWN_EMPTY_SEGMENT 0

DEFINE UNKNOWN_THREADS_MEMORY 0

{$VERSION 3.1.0023}

//-------------MAIN---------------
thread 'MAIN'
fade 0 0
042C: set_total_missions_to 0
030D: set_max_progress 0
01F0: set_max_wanted_level_to 6
set_wb_check_to 0
00C0: set_current_time_hours_to 10 minutes_to 0
$7 = 0.0
$6 = 0.0
$5 = 30.0
04E4: unknown_refresh_game_renderer_at $7 $6
Camera.SetAtPos($7, $6, $5)
062A: change_float_stat 165 to 999.0
062A: change_float_stat 23 to 999.0
062A: change_float_stat 21 to 0.0
062A: change_float_stat 163 to 999.0
062A: change_float_stat 160 to 999.0
062A: change_float_stat 229 to 999.0
062A: change_float_stat 223 to 999.0
062A: change_float_stat 230 to 999.0
0629: change_integer_stat 181 to 4
0629: change_integer_stat 68 to 0
$PLAYER_CHAR = Player.Create(#NULL, $7, $6, $5)
07AF: $PLAYER_GROUP = player $PLAYER_CHAR group
$PLAYER_ACTOR = Actor.EmulateFromPlayer($PLAYER_CHAR)
Camera.SetBehindPlayer
Actor.Angle($PLAYER_ACTOR) = 262.0
set_weather 1
Player.SetClothes($PLAYER_CHAR, "BBALLJACKRSTAR", "BBJACK", Torso)
Player.SetClothes($PLAYER_CHAR, "JEANSDENIM", "JEANS", Legs)
Player.SetClothes($PLAYER_CHAR, "SNEAKERBINCBLK", "SNEAKER", Shoes)
Player.SetClothes($PLAYER_CHAR, "PLAYER_FACE", "HEAD", Head)
Player.Build($PLAYER_CHAR)
023C: load_special_actor "SMOKE" as 1
023D:   special_actor 1 loaded
09C7: change_player $PLAYER_CHAR model_to #SPECIAL01
02A3: toggle_widescreen 0
select_interior 0
Player.CanMove($PLAYER_CHAR) = True
01B7: release_weather
016C: restart_if_wasted_at $7 $6 $5 angle 0.0 town_number 0
Model.Load(#HYDRA)

:MAIN_383
wait 0
if
   Model.Available(#HYDRA)
else_jump @MAIN_383
$4 = Car.Create(#HYDRA, $7, $6, $5)
036A: put_actor $PLAYER_ACTOR in_car $4
fade 1 1000
wait 100
03E6: remove_text_box


:MAIN_449
wait 2500
jump @MAIN_449


Надеюсь на помощь!!!

Offline

#4 14-09-2010 08:34

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

Re: Помогите со сменой модели пресонажа!

опкод, вроде, не работает со спец. актёрами...попробуй сделать, как с обычным педом.
загружаешь модель #SMOKE, проверяешь и используешь опкод с ней

да и вообще, у тебя сама проверка не организована, только один опкод проверочный стоит, и всё!!! читай помощь, блин.

Last edited by 3Doomer (14-09-2010 08:35)


GIMS developer

Offline

#5 14-09-2010 09:05

DrKillJoy
Registered: 24-08-2010
Posts: 9

Re: Помогите со сменой модели пресонажа!

Проверка – это в смысле загружена ли модель? И какую помощь читать? Справку к Sanny Builder, так там этого нет (в смысле смены модели персонажа).

Offline

#6 14-09-2010 11:26

Sw[ee]t
From: Нижний Новгород
Registered: 16-02-2009
Posts: 686
Website

Re: Помогите со сменой модели пресонажа!

В смысле загружен-ли спец. актёр (special actor available)

Offline

#7 14-09-2010 11:57

DrKillJoy
Registered: 24-08-2010
Posts: 9

Re: Помогите со сменой модели пресонажа!

Все сделал, и теперь работает!!! Я вынес все в отдельный поток и сделал проверку, как говорил Sw[ee]t. Вот если кому понадобиться:

:NONAME_1
wait 0
023C: load_special_actor "SMOKE" as 1 // models 290-299
if
023D:   special_actor 1 loaded
else_jump @NONAME_1
09C7: change_player $PLAYER_CHAR model_to #SPECIAL01
end_thread


P.S. Большое спасибо всем, кто принял участие в решении этой проблемы.

Offline

#8 14-09-2010 15:45

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

Re: Помогите со сменой модели пресонажа!

видишь, вся проблема была только в твоём незнании скриптового языка(а ведь он очень похож на паскаль и си)
читать справку, про циклы, условия, и т.д.


GIMS developer

Offline

#9 15-09-2010 07:01

Alien
Registered: 12-10-2008
Posts: 564

Re: Помогите со сменой модели пресонажа!

3Doomer wrote:

(а ведь он очень похож на паскаль и си)

Каким местом? о_О

Offline

Board footer

Powered by FluxBB