AMX MOD X
Воскресенье, 20.09.2020, 06:36:14



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

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

  • Страница 1 из 1
  • 1
Модератор форума: slogic, AlMod  
AMX Mod X Форум » Скриптинг » Помощь по скриптингу » Третий вопрос)) (Сори)))
Третий вопрос))
pashok_91Дата: Понедельник, 03.08.2009, 01:04:47 | Сообщение # 1
Сержант
Группа: Пользователи
Сообщений: 34
Репутация: 0
Статус: Не в сети
Вот скажите мне.

Создал я энтити
new eid = create_entity("info_target")

Потом eid присваеваем глобалке.
lastGren=eid;

Потом, пытаемся взять орирджин этой энтити
pev(lastGren, pev_origin, origin);
и неполучается. ошибок не пишет, но пытаясь создать спарйт или что угодно другое на месте origin, - не создаеться.

убрать энтити получается
remove_entity(lastGren);

Подскажите!!!

 
defaultNick8433Дата: Понедельник, 03.08.2009, 08:54:31 | Сообщение # 2
Генерал-полковник
Группа: Скриптеры
Сообщений: 806
Репутация: 19
Статус: Не в сети
Что у тебя не получается сделать?

Раскручиваю сайты,ставлю трекера на хостинг.Всё бесплатно.Если заинтересовало,то моя аська 400538001
 
HoRRoRДата: Понедельник, 03.08.2009, 12:07:41 | Сообщение # 3
Полковник
Группа: Скриптеры
Сообщений: 181
Репутация: 8
Статус: Не в сети
pashok_91,
чтобы взять координаты энтити, ты сначала должен задать эти координаты ей :)

смотри:
1) создаёшь обект
2) присваеваем глобалке
3) берем координаты, которые ты не создал (!)

насолько мне известно, обьект, без координат сразу перемещается в "0 0 0"

Добавлено (2009-08-03, 12:07 Pm)
---------------------------------------------
юзай это: http://www.amxmodx.org/funcwiki.php?go=func&id=353 для задания координат

Сообщение отредактировал HoRRoR - Понедельник, 03.08.2009, 12:06:08
 
pashok_91Дата: Понедельник, 03.08.2009, 13:25:11 | Сообщение # 4
Сержант
Группа: Пользователи
Сообщений: 34
Репутация: 0
Статус: Не в сети
Quote (HoRRoR)
берем координаты, которые ты не создал (!)

:D :D :D :D :D

Все создано и присвоено, просто я не стал весь код постить, это не к чему.

Добавлено (2009-08-03, 1:25 Pm)
---------------------------------------------

Quote (defaultNick8433)
Что у тебя не получается сделать?

не получаеться, скажем, поставить спрайт на место энтити.

 
defaultNick8433Дата: Понедельник, 03.08.2009, 13:53:45 | Сообщение # 5
Генерал-полковник
Группа: Скриптеры
Сообщений: 806
Репутация: 19
Статус: Не в сети
Quote (pashok_91)
не получаеться, скажем, поставить спрайт на место энтити.

Тогда надо в public plugin_init() вписать функцию create_sprite(),а потом уже в ней уже создаешь ентитю,присваеваешь ей свойства спрайта
Code

public plugin_init()
{
register_plugin("x","x","x")
create_sprite()
}
public create_sprite()
{
new ent=engfunc(EngFunc_CreateNamedEntity,engfunc(EngFunc_AllocString,"env_sprite"))
//ну а дальше твой код,координаты ентити,всё такое.
}


Раскручиваю сайты,ставлю трекера на хостинг.Всё бесплатно.Если заинтересовало,то моя аська 400538001
 
pashok_91Дата: Понедельник, 03.08.2009, 17:02:49 | Сообщение # 6
Сержант
Группа: Пользователи
Сообщений: 34
Репутация: 0
Статус: Не в сети
Хм....... бред полный у меня тут....
Короче с координатами все в порядке, если создать энтити на месте origin, то оно све правильно создастцо...
А вот спрайт или любой другой мессадж нефига.....

Добавлено (2009-08-03, 5:02 Pm)
---------------------------------------------
И опять же, если вместо pev(lastGren, pev_origin, origin2); сделать get_user_origin(1, origin, 1)
и на этом месте поставить спрайт то он ставится.... нихера не понимаю..

 
defaultNick8433Дата: Понедельник, 03.08.2009, 17:11:24 | Сообщение # 7
Генерал-полковник
Группа: Скриптеры
Сообщений: 806
Репутация: 19
Статус: Не в сети
Подойдёт?
Code

stock const Float:g_sprite_origin[]={"x","y","z"}
new const g_sprite[]="sprites/sprite.spr"

public plugin_precache()
{
precache_model(g_sprite)
}
public create_sprite()
{
ew ent = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "env_sprite"))
  engfunc(EngFunc_SetOrigin, ent, g_sprite_origin)
  engfunc(EngFunc_SetModel, ent, g_sprite)
  dllfunc(DLLFunc_Spawn, ent)
}


Раскручиваю сайты,ставлю трекера на хостинг.Всё бесплатно.Если заинтересовало,то моя аська 400538001
 
pashok_91Дата: Понедельник, 03.08.2009, 17:12:55 | Сообщение # 8
Сержант
Группа: Пользователи
Сообщений: 34
Репутация: 0
Статус: Не в сети
Вобщем вот что имеем

new Float:origin2[3];

// здесь одно из двух
//pev(gi, pev_origin, origin2); -----взять координаты Энтити
//get_user_origin(1, origin2, 1) ----- или взять координаты Игрока(меня)


new lol = create_entity("info_target")

entity_set_string(lol, EV_SZ_classname, "w_hegranade")
entity_set_model(lol, "models/w_hegrenade.mdl")

entity_set_origin(lol, origin2)
entity_set_int(lol, EV_INT_solid, SOLID_BBOX);

//создать спрайт
message_begin(MSG_ALL,SVC_TEMPENTITY)
write_byte(17) // TE id
write_coord(origin2[0]) // start position
write_coord(origin2[1])
write_coord(origin2[2])
write_short(spr) // sprite
write_byte(random_num(5, 10)) // scale
write_byte(250) // brightness
message_end()

В итоге просто бред получается - если берем коорд. энтити то спрайт не ставиться, а новая энтити создаеться.
если берем коорд. игрока, то спрайт СТАВИТСЯ, но энтити не ставится.

Че за?

 
defaultNick8433Дата: Понедельник, 03.08.2009, 17:20:59 | Сообщение # 9
Генерал-полковник
Группа: Скриптеры
Сообщений: 806
Репутация: 19
Статус: Не в сети
код мой прочитай выше!Там спрайт создаётся

Раскручиваю сайты,ставлю трекера на хостинг.Всё бесплатно.Если заинтересовало,то моя аська 400538001
 
pashok_91Дата: Понедельник, 03.08.2009, 17:30:27 | Сообщение # 10
Сержант
Группа: Пользователи
Сообщений: 34
Репутация: 0
Статус: Не в сети
Все раздуплился:

вместо
write_coord(origin2[0]) // start position
write_coord(origin2[1])
write_coord(origin2[2])

нужно ставить:
engfunc(EngFunc_WriteCoord, origin2[0]) // x
engfunc(EngFunc_WriteCoord, origin2[1]) // y
engfunc(EngFunc_WriteCoord, origin2[2]) // z

 
defaultNick8433Дата: Понедельник, 03.08.2009, 17:33:37 | Сообщение # 11
Генерал-полковник
Группа: Скриптеры
Сообщений: 806
Репутация: 19
Статус: Не в сети
pashok_91, ты как будто не видишь меня :)

Раскручиваю сайты,ставлю трекера на хостинг.Всё бесплатно.Если заинтересовало,то моя аська 400538001
 
pashok_91Дата: Понедельник, 03.08.2009, 18:26:05 | Сообщение # 12
Сержант
Группа: Пользователи
Сообщений: 34
Репутация: 0
Статус: Не в сети
defaultNick8433, прости, большое спасибо тебе за желание помочь.

просто мне кроме спрайта создать еще кучу чего точно таким же способом.
все равно спасибо.

 
defaultNick8433Дата: Понедельник, 03.08.2009, 18:35:24 | Сообщение # 13
Генерал-полковник
Группа: Скриптеры
Сообщений: 806
Репутация: 19
Статус: Не в сети
Да дело в этом,что мне казалось,что ты не замечаешь мои сообщения :)

Раскручиваю сайты,ставлю трекера на хостинг.Всё бесплатно.Если заинтересовало,то моя аська 400538001
 
AMX Mod X Форум » Скриптинг » Помощь по скриптингу » Третий вопрос)) (Сори)))
  • Страница 1 из 1
  • 1
Поиск:

AMX Mod X Russian Community © 2006-2020