Получаешь координаты головы, переводишь их в экранные, отнимаешь по X сколько нужно и рендеришь текст.Дарова всем, как сделать чтоб крутился текст вокруг головы по своей оси (не привязка к кости)? Пример: http://i.imgur.com/NGi75jE.png. Скинь пожалуйста опкод/систему для этого.
http://i.imgur.com/kI4Liix.png получиться как тут?Получаешь координаты головы, переводишь их в экранные, отнимаешь по X сколько нужно и рендеришь текст.
Тебе что ли нужно чтобы текст постоянно вращался вокруг головы?http://i.imgur.com/kI4Liix.png получиться как тут?
Всем привет :) Помогите, пожалуйста, написать такой маленький скрипт: зажать клавишу w (газ) в координатах 2780,88 1739,55 12,13 через 10 сек отпустить, при достижения координат 2780,88 1708,45 12,13 зажать клавишу s (тормоз) на 3 секунды, после чего отпустить. Активировать, к примеру, на P. Скриптом от можайки через библиотеку User32.dll не работает симуляция на win7. Можно это как-нибудь сделать через запись в память? Или как правильно написать через sampfuncs:
0B56: set_game_key 1@ state 2@
Устанавливает статус игровой клавиши
1@ [in:int] - ид клавиши
2@ [in:int] - статус
{$CLEO }
0000:
repeat
wait 400
until samp.Available()
while true
wait 0
if
00FE: actor $PLAYER_ACTOR sphere 0 in_sphere 2780.88 1739.55 12.13 radius 2.0 2.0 2.0
then
repeat
wait 400
0B56: set_game_key 1 state -255
until not 00FE: actor $PLAYER_ACTOR sphere 0 in_sphere 2780.88 1708.45 12.13 radius 2.0 2.0 2.0
// koro4e cam delay v pizdy
// 0DBF: emul_key_press VK_LEFT is_up 0
end
ONFOOT CONTROLS
# CONTROL GXT ENTRY VALUES
0 left/right ~k~~GO_LEFT~ / ~k~~GO_RIGHT~
1 forward/backward ~k~~GO_FORWARD~ / ~k~~GO_BACK~
2 special ctrl left/right ~k~~VEHICLE_LOOKLEFT~/~k~~VEHICLE_LOOKRIGHT~
3 special ctrl up/down -unknown-
4 action/secondary fire ~k~~PED_ANSWER_PHONE~/ ~k~~PED_FIREWEAPON_ALT~
5 previous weapon/zoom in ~k~~PED_CYCLE_WEAPON_LEFT~/ ~k~~PED_SNIPER_ZOOM_IN~
6 aim weapon ~k~~PED_LOCK_TARGET~
7 next weapon/zoom out ~k~~PED_CYCLE_WEAPON_RIGHT~/ ~k~~PED_SNIPER_ZOOM_OUT~
8 group CTRL forward ~k~~GROUP_CONTROL_FWD~
9 group CTRL back ~k~~GROUP_CONTROL_BWD~
10 conversation - no ~k~~CONVERSATION_NO~
11 conversation - yes ~k~~CONVERSATION_YES~
12 (does not exist) -- -- --
13 change camera ~k~~CAMERA_CHANGE_VIEW_ALL_SITUATIONS~
14 jump ~k~~PED_JUMPING~
15 enter vehicle ~k~~VEHICLE_ENTER_EXIT~
16 sprint ~k~~PED_SPRINT~
17 fire ~k~~PED_FIREWEAPON~
18 crouch ~k~~PED_DUCK~
19 look behind ~k~~PED_LOOKBEHIND~
LALT sneak ~k~~SNEAK_ABOUT~
VEHICLE CONTROLS
# CONTROL GXT ENTRY VALUES
0 left/right ~k~~VEHICLE_STEERLEFT~/ ~k~~VEHICLE_STEERRIGHT~
1 steer back/up ~k~~VEHICLE_STEERUP~/ ~k~~VEHICLE_STEERDOWN~
2 special ctrl left/right ~k~~VEHICLE_TURRETLEFT~/ ~k~~VEHICLE_TURRETRIGHT~ (NUM6)
3 special control up/down ~k~~VEHICLE_TURRETUP~/ ~k~~VEHICLE_TURRETDOWN~
4 secondary fire ~k~~VEHICLE_FIREWEAPON_ALT~
5 look left ~k~~VEHICLE_LOOKLEFT~
6 hand brake ~k~~VEHICLE_HANDBRAKE~
7 look right ~k~~VEHICLE_LOOKRIGHT~
8 next radio station ~k~~VEHICLE_RADIO_STATION_UP~
9 previous radio station ~k~~VEHICLE_RADIO_STATION_DOWN~
10 no ~k~~CONVERSATION_NO~
11 yes / trip skip ~k~~CONVERSATION_YES~
12 (does not exist) -- -- --
13 camera ~k~~CAMERA_CHANGE_VIEW_ALL_SITUATIONS~
14 brake/reserve ~k~~VEHICLE_BRAKE~
15 enter/exit ~k~~VEHICLE_ENTER_EXIT~
16 accelerate ~k~~VEHICLE_ACCELERATE~
17 fire ~k~~VEHICLE_FIREWEAPON~
18 horn ~k~~VEHICLE_HORN~
19 submission ~k~~TOGGLE_SUBMISSIONS~
Именно это мне и надо... не привязывая его к кости человека.... а то вмести с костью двигаетсяТебе что ли нужно чтобы текст постоянно вращался вокруг головы?
{$CLEO }
0000:
repeat
wait 400
until samp.Available()
while true
wait 0
if
00FE: actor $PLAYER_ACTOR sphere 0 in_sphere 2780.88 1739.55 12.13 radius 2.0 2.0 2.0
then
repeat
wait 400
0B56: set_game_key 1 state -255
until not 00FE: actor $PLAYER_ACTOR sphere 0 in_sphere 2780.88 1708.45 12.13 radius 2.0 2.0 2.0
// koro4e cam delay v pizdy
// 0DBF: emul_key_press VK_LEFT is_up 0
end
// This file was decompiled using SASCM.ini published by GTAG (http://gtag.gtagaming.com/opcode-database) on 14.6.2013
{$CLEO .cs}
hex
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
end
//-------------MAIN---------------
0000: NOP
:Noname_2
wait 400
SAMP.Available
else_jump @Noname_2
0B34: samp register_client_command "cg" to_label @Noname_56
:Noname_27
wait 0
if
29@ == 1
else_jump @Noname_27
jump @Noname_65
:Noname_56
29@ = 1
SAMP.CmdRet
:Noname_65
wait 0
if
Actor.Driving($PLAYER_ACTOR)
else_jump @Noname_269
0AE3: 10@ = random_object_near_point 2250.03 -2238.97 11.31 in_radius 10.0 find_next 0 //IF and SET
else_jump @Noname_126
jump @Noname_185
:Noname_126
0AE3: 10@ = random_object_near_point 2250.03 -2238.97 11.31 in_radius 10.0 find_next 1 //IF and SET
0ACD: show_text_highpriority "~y~S~w~earch" time 1
else_jump @Noname_65
jump @Noname_185
:Noname_185
11@ = Object.Model(10@)
if
11@ == 1558
else_jump @Noname_65
Object.StorePos(10@, 21@, 22@, 2@)
call @Noname_297 3 21@ 22@ 2@
say "/take"
29@ = 0
jump @Noname_27
:Noname_269
0ACD: show_text_highpriority "Bot off" time 2500
29@ = 0
jump @Noname_27
:Noname_297
3@ = SAMP.GetSAMPPlayerIDByActorHandle($PLAYER_ACTOR)
3@ = SAMP.GetPlayerStruct(3@)
3@ += 201
alloc 4@ 63
0C10: memcpy destination 4@ source 3@ size 63
0C0D: struct 4@ offset 24 size 4 = 0@
0C0D: struct 4@ offset 28 size 4 = 1@
0C0D: struct 4@ offset 32 size 4 = 2@
5@ = RakNet.NewBitStream()
RakNet.Write(5@, 219, BS_TYPE_BYTE, 1)
RakNet.Write(5@, 4@, BS_TYPE_ARRAY, 63)
RakNet.Send(5@, 1, 7, 0)
RakNet.DeleteBitStream(5@)
free 4@
ret 0
Кажется это синхронизация отвечающая за твою позицию. Скрипт её просто подменивает. Ну я так думаю.а именно не понятна метка :Noname_297
Так и естьКажется это синхронизация отвечающая за твою позицию. Скрипт её просто подменивает. Ну я так думаю.
Object.StorePos(10@, 21@, 22@, 2@)
call @Noname_297 3 21@ 22@ 2@
:noname_297
3@ = SAMP.GetSAMPPlayerIDByActorHandle($PLAYER_ACTOR)
3@ = SAMP.GetPlayerStruct(3@)
3@ += 201
alloc 4@ 63
0C10: memcpy destination 4@ source 3@ size 63
0C0D: struct 4@ offset 24 size 4 = 0@ // x
0C0D: struct 4@ offset 28 size 4 = 1@ // y
0C0D: struct 4@ offset 32 size 4 = 2@ // z
5@ = RakNet.NewBitStream()
RakNet.Write(5@, 219, BS_TYPE_BYTE, 1)
RakNet.Write(5@, 4@, BS_TYPE_ARRAY, 63)
RakNet.Send(5@, 1, 7, 0)
RakNet.DeleteBitStream(5@)
free 4@
ret 0
object.StorePos(handle,x,y,z)как узнать X,Y,Z и повороты у объекта?? Не могу найти код:(
{$CLEO }
0000:
repeat
wait 400
until samp.Available()
0B34: samp register_client_command "tt" to_label @time
samp.WriteSAMPMemory(46496, 50064, 2)
wait 100
//samp.WriteSAMPMemory(45520, 50064, 2)
while true
wait 0
end
:time
0B35: samp 1@ = get_last_command_params
wait 100
//sampPatch[] = "NOP SetWeather" &0 0 0xB2C0 "" "C390"
//sampPatch[] = "NOP SetGravity" &0 0 0x15940 "" "C390"
//sampPatch[] = "NOP SetWorldTime" &0 0 0xB1D0 "" "C390"
//sampPatch[] = "NOP SetPlayerTime" &0 0 0xB5A0 "" "C390"
//0A8C: write_memory 11993427 size 1 value 1@ virtual_protect 0
0A8C: write_memory 11993427 size 1 value 1@ virtual_protect 1
0A8C: write_memory 11993426 size 1 value 1@ virtual_protect 1
samp.CmdRet()