AMX MOD X
Пятница, 19.04.2024, 08:39:43



Приветствую Вас Гость | RSS
[ Главная ] [ Помогите пожалуйста сделать как в HL-2 притягивание и пере- - AMX Mod X Форум ] [ Регистрация ] [ Вход ]
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]

Вниманию участников! Данный форум теперь является архивом и вскором времени здесь нельзя будет создавать новых тем! Просьба всем для общения и создания новых тем перейти на наш новый форум: http://amxmodx.su/

  • Страница 1 из 1
  • 1
Модератор форума: slogic, AlMod  
AMX Mod X Форум » Скриптинг » Помощь по скриптингу » Помогите пожалуйста сделать как в HL-2 притягивание и пере- (нос объектов (игроков, заложей) нажатием на клавишу "E")
Помогите пожалуйста сделать как в HL-2 притягивание и пере-
PAHANCSДата: Среда, 18.03.2009, 16:12:18 | Сообщение # 1
Полковник
Группа: Пользователи
Сообщений: 183
Репутация: 4
Статус: Не в сети
Что-то подобное получается но не совсем то, объект (игрок, заложник) начинает почему-то приближаться к себе, и переносить толком нельзя, слетает когда двигаешся в право или в лево и. т. п. ? :( , и как заблокировать все его действия ? Помогите пожалуйста. :(

Пробывал так:

Code

#include amxmodx
#include engine
#include fakemeta

#define PLUGIN "Use Teleporter"
#define VERSION "1.0"
#define AUTHOR "PahanCS"

#define radius 50.0

new use_teleporter = 0

public plugin_init() {
register_forward(FM_PlayerPreThink, "forward_playerprethink")
register_concmd("use_teleport", "use_teleport")
register_plugin(PLUGIN, VERSION, AUTHOR)
}

//

public use_teleport(id) {
if(use_teleporter == 0) {
use_teleporter = 1
client_print(id, print_center, "Use Teleporter 'ON'")
}
else {
use_teleporter = 0
client_print(id, print_center, "Use Teleporter 'OFF'")
}
return PLUGIN_HANDLED
}

//

public forward_playerprethink(id) {
if(use_teleporter != 1) return FMRES_IGNORED;
if(!is_user_alive(id)) return FMRES_IGNORED;
if(!(get_user_button(id) & IN_USE)) return FMRES_IGNORED;
new orig[3], Float:iOrigin[3];
get_user_origin(id, orig, 3);
IVecFVec(orig, iOrigin)
new id2 = find_ent_in_sphere(id, iOrigin, radius);
if(id2 == 0 || id2 == id)  return FMRES_IGNORED;
new Float:healthid;
pev(id2, pev_health, healthid);
if(healthid <= 0.0) return FMRES_IGNORED;
new Float:iOrigin3[3], Float:iOrigin4[3];
pev(id, pev_origin, iOrigin3);
pev(id2, pev_origin, iOrigin4);
if(get_distance_f(iOrigin3, iOrigin4) <= 60.0) return FMRES_IGNORED;  //Это потому что не  
// получается  держать объект на месте, а как ?

if(id2 > 32) iOrigin[2] -= 30.0  //Это в основном для заложей.
set_pev(id2, pev_origin, iOrigin);
return FMRES_IGNORED;
}



PAHANCS
 
LeXiKoNДата: Суббота, 21.03.2009, 19:43:43 | Сообщение # 2
Майор
Группа: Пользователи
Сообщений: 85
Репутация: 1
Статус: Не в сети
посмотри исходник плагина grab ( prokreedz_grab ) может что из него извлечешь
 
PAHANCSДата: Понедельник, 23.03.2009, 03:50:35 | Сообщение # 3
Полковник
Группа: Пользователи
Сообщений: 183
Репутация: 4
Статус: Не в сети
LeXiKoN, Спасибо Большое ! :) , обязательно посмотрю.

PAHANCS
 
AMX Mod X Форум » Скриптинг » Помощь по скриптингу » Помогите пожалуйста сделать как в HL-2 притягивание и пере- (нос объектов (игроков, заложей) нажатием на клавишу "E")
  • Страница 1 из 1
  • 1
Поиск:

AMX Mod X Russian Community © 2006-2024