GivePlayerItem
|
|
Sunday
|
Дата: Понедельник, 14.01.2013, 06:07:44 | Сообщение # 1 |
|
Сообщений: 186
Репутация: 24 [ +/- ]
|
|
Парни, подскажите в чем может быть проблема, вот пример:
// ***************************************************** #include <sourcemod> #include <sdktools> #pragma semicolon 1
public OnPluginStart() { RegConsoleCmd("sm_gr", Command_gr); }
public Action:Command_gr(client,args) { GivePlayerItem(client, "weapon_ar2"); }
Если таким образом я даю Автомат "weapon_ar2" то проблем нет, дается автомат // ***************************************************** но когда я даю "weapon_frag" :
#include <sourcemod> #include <sdktools> #pragma semicolon 1
public OnPluginStart() { RegConsoleCmd("sm_gr", Command_gr); }
public Action:Command_gr(client,args) { GivePlayerItem(client, "weapon_frag"); } // ***************************************************** То ни чего не происходит, наименования верное. В чем может быть проблема и как ее решить?
Сообщение отредактировал Sunday - Понедельник, 14.01.2013, 06:10:34 |
|
| |
Beelzebub
|
Дата: Понедельник, 14.01.2013, 06:58:14 | Сообщение # 2 |
|
Сообщений: 202
Репутация: 13 [ +/- ]
|
|
Да вроде все правильно. Может такого нет оружия?
Попробовал со спавном
Код #include <sourcemod> #include <sdktools>
public OnPluginStart() { HookEvent("player_spawn", EventSpawn); }
public EventSpawn(Handle:Event, const String:Name[], bool:Broadcast) { decl Client;
Client = GetClientOfUserId(GetEventInt(Event, "userid"));
GivePlayerItem(Client, "weapon_frag"); }
Попробуй может заработает.
Добавлено (00.00.1337, 00:00:00) --------------------------------------------- по искал в инете есть еще npc_grenade_frag
Сообщение отредактировал Beelzebub - Понедельник, 14.01.2013, 06:58:54 |
|
| |
Sunday
|
Дата: Понедельник, 14.01.2013, 09:47:30 | Сообщение # 3 |
|
Сообщений: 186
Репутация: 24 [ +/- ]
|
|
Спасибо Beelzebub. Удивительно но ни как не получается дать гранаты но тем ни менее я думаю что правильное наименование "weapon_frag", "npc_grenade_frag" она не наносит урона, появляется под ногами, когда подымаешь то активируется, взрывается и все. Уже пробовал по всякому с разными условиями, я помню что раньше я делал через плагин и там можно было удалять оружие на респауне, как раз таки при удалении гранат (специально вера в скрипте глянул), используется параметр "weapon_frag", но почему дать игроку гранаты не выходит, понять не могу и когда я на карте оружие раскидывал через плагин, тоже этим же параметром....., чудеса да и только.
Добавлено (14.01.2013, 09:13:13) --------------------------------------------- Через CreateEntityByName(client, "weapon_frag"); она создается... а как на игрока применить ее, ума не приложу..
Добавлено (14.01.2013, 09:47:30) --------------------------------------------- Думал, думал и придумал, работает отлично!) Взял местонахождения игрока по оси x y z и отреспаунил на него гранату))) вот что получилось: Код #include <sourcemod> #include <sdktools>
new enty; new Float:c_origin[3];
public OnPluginStart() { RegConsoleCmd("bay_grenade_frag", cmd_grenade_frag); }
public Action: cmd_grenade_frag(client, args) { if (IsPlayerAlive(client)) { decl Float:vec[3];
GetClientAbsOrigin(client, vec);
c_origin[0] = vec[0]; c_origin[1] = vec[1]; c_origin[2] = vec[2];
enty = CreateEntityByName("weapon_frag"); DispatchKeyValueVector(enty, "origin", c_origin) DispatchSpawn(enty); } }
Уверен пригодиться кому ни будь кто столкнется с такой же проблемой.
Сообщение отредактировал Sunday - Понедельник, 14.01.2013, 09:54:33 |
|
| |
Beelzebub
|
Дата: Понедельник, 14.01.2013, 11:36:33 | Сообщение # 4 |
|
Сообщений: 202
Репутация: 13 [ +/- ]
|
|
Sunday, Молодец. Я вот посмотрел Roleplay плагин для hl2dm там сделано как на моем примере. И как раз там все работает отлично. А вот почему твой первый вариант не работал странно. Ну все же ты молодец =)
|
|
| |
Sunday
|
Дата: Понедельник, 14.01.2013, 14:02:32 | Сообщение # 5 |
|
Сообщений: 186
Репутация: 24 [ +/- ]
|
|
Цитата (Beelzebub) Sunday, Молодец. Я вот посмотрел Roleplay плагин для hl2dm там сделано как на моем примере. И как раз там все работает отлично. А вот почему твой первый вариант не работал странно. Ну все же ты молодец =)
Спасибо Beelzebub, стараюсь вникать потихонечку, приятно когда начинает что то да получаться :)
|
|
| |
NANO_VIRUS
|
Дата: Понедельник, 20.05.2013, 19:01:00 | Сообщение # 6 |
|
Сообщений: 41
Репутация: 0 [ +/- ]
|
|
Можно еще так Код new index = CreateEntityByName("game_player_equip"); if (index < 1)return; DispatchKeyValue(index,"weapon_frag","1"); DispatchSpawn(index); ActivateEntity(index); AcceptEntityInput(index, "use", client); AcceptEntityInput(index, "kill");
|
|
| |