Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

get_user_origin

Статус пользователя Captain
сообщение 1.8.2017, 19:41
Сообщение #1
Стаж: 12 лет

Сообщений: 251
Благодарностей: 7
Полезность: < 0

Привет. Как с помощью функции get_user_origin переместить террориста на базу CT?

Код:
new position[3]

register_event("HLTV", "new_round", "a", "1=0", "2=0")
register_clcmd("test","teleport")

public new_round()
{
new players[32], count
get_players(players, count, "ach")
for(new i = 0; i < count; i++)
{
new id = players[i]
if(cs_get_user_team(id) == CS_TEAM_CT)
{
get_user_origin(id, position, 0)
}
}
}

public teleport(id)
{
if(!(cs_get_user_team(id) == CS_TEAM_T))
{
return PLUGIN_HANDLED
}
if(position[0] != 0)
{
set_user_origin(id, position)
}
return PLUGIN_HANDLED
}



Если так делать, то тера телепортирует куда на своей базе, вместо КТ базы
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя steelzzz
сообщение 1.8.2017, 20:30
Сообщение #2


Стаж: 12 лет

Сообщений: 609
Благодарностей: 187
Полезность: 167

посмотри тут


Нужна помощь в настройке сервера или плагина? (Платно) -> Тык
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя ssx
сообщение 1.8.2017, 23:59
Сообщение #3


Стаж: 12 лет

Сообщений: 2237
Благодарностей: 1343
Полезность: 836

на базу - просто его spawn(id) и появится на базе. или спавн через хам
да любой спавн его перенесет на базу без каких либо set_user_origin


[Half-Life DM FFA] 78.152.169.100:27016
[CS 1.6 GunGame] 78.152.169.100:27018
[CS 1.6 DM AIM] 78.152.169.100:27017
[CS 1.6 DM FFA] 78.152.169.100:27015
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя JIuXeP
сообщение 2.8.2017, 1:53
Сообщение #4


Стаж: 12 лет

Сообщений: 338
Благодарностей: 205
Полезность: 792

ssx, если он мертв. Тут преследуется задача именно телепортнуть живого игрока)

тут реализовано подобное. Но за "качество" я не ручаюсь)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Captain
сообщение 2.8.2017, 9:22
Сообщение #5
Стаж: 12 лет

Сообщений: 251
Благодарностей: 7
Полезность: < 0

Как насчет вот этого плагина? Ток в комментариях на amx-x писали что это не самый лучший вариант телепортации

Cкрытый текст
Код:
#include <amxmodx>
#include <fakemeta>
#include <cstrike>
#include <fun>
#include <dhudmessage>

#pragma semicolon 1

#define PLUGIN "Teleport TerroristBase"
#define VERSION "1.0"
#define AUTHOR "noname"

new Float:g_vec[2][3];
new gCreatyVector;

public plugin_precache() /* прекеш вызывается раньше, уже в это время вызываем функцию ForwardSpawn; */
gCreatyVector = register_forward(FM_Spawn, "ForwardSpawn", 1); /*Вызывается функция ForwardSpawn и делаем свою работу*/

public plugin_init()
{
register_plugin(PLUGIN,VERSION,AUTHOR);
register_clcmd("say /gonki","terror");
unregister_forward(FM_Spawn, gCreatyVector, 1); /* ForwardSpawn работу уже сделал, поэтому в дальнейшем он нам не нужен*/
}

public terror(id)
{
new CsTeams:team = cs_get_user_team(id);

if(team == CS_TEAM_T)
{
teleeed(id);
}
else
{
client_print(id, print_chat, "Режим может активировать только террорист");
}
}

/* ForwardSpawn до загрузки карты и вот что выполняется*/
public ForwardSpawn(ent)
{
if(!pev_valid(ent)) /*Если энтитя info_player_start отсуствует на карте, игнорируем*/
return FMRES_IGNORED;

new classname[32];
pev(ent, pev_classname, classname, sizeof classname - 1);
if(equal(classname, "info_player_start")) /*Устанавливаем класс на info_player_start*/
{
pev(ent,pev_origin,g_vec[0]); /* Определяем координаты info_player_start и сохраняем в массив g_vec*/
}
return FMRES_IGNORED;
}

public teleeed(id)
{
new red = random_num(0, 255);
new green = random_num(0, 255);
new blue = random_num(0, 255);

engfunc(EngFunc_SetOrigin,id,g_vec[0]);

if (cs_get_user_team(id) == CS_TEAM_CT)
{
strip_user_weapons(id);
}

set_dhudmessage(red , green, blue, 0.01, 0.50, 0, 6.0, 8.0, 1.0, 1.5);
show_dhudmessage(0, "Террорист - выбрал догонялки!");
server_cmd("deathrun_mode ^"UP^"");

}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: