Перейти к содержимому


Фотография

Нужен плагин выдачи оружия рандомно.


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 11

#1 hns NewUnivers

hns NewUnivers

    Новичок

  • Пользователь
  • Pip
  • 31 сообщений

Отправлено 21 Декабрь 2012 - 13:00

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

#2 Noovey

Noovey

    Новичок

  • Пользователь
  • Pip
  • 21 сообщений

Отправлено 21 Декабрь 2012 - 13:11

"Первичное" или "Вторичное", в смысле автоматы, винтовки или пистолеты или и то и другое?

#3 hns NewUnivers

hns NewUnivers

    Новичок

  • Пользователь
  • Pip
  • 31 сообщений

Отправлено 21 Декабрь 2012 - 13:14

"Первичное" или "Вторичное", в смысле автоматы, винтовки или пистолеты или и то и другое?

мне кажется лучше пистолеты

#4 nox904

nox904

    Пользователь

  • Пользователь
  • PipPipPip
  • 222 сообщений

Отправлено 21 Декабрь 2012 - 13:29

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

http://forums.allied...ead.php?t=73576

#5 Noovey

Noovey

    Новичок

  • Пользователь
  • Pip
  • 21 сообщений

Отправлено 21 Декабрь 2012 - 16:38

Как то так:
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fakemeta>

#if cellbits == 32
const OFFSET_CLIPAMMO = 51
#else
const OFFSET_CLIPAMMO = 65
#endif
const OFFSET_LINUX_WEAPONS = 4

public plugin_init()
{
	register_plugin("RandWeapon T", "0.1", "Noovey")

	register_event("HLTV", "evNewRound", "a", "1=0", "2=0")
}

public evNewRound()
	set_task(0.1, "randPlayer", 765)

public randPlayer()
{
 	new players[32], count
	get_players(players, count, "ae", "TERRORIST")

	new player = players[random(count)]

	if(!player)
		return PLUGIN_HANDLED

	randWeapon(player)

	return PLUGIN_HANDLED
}

public randWeapon(id)
{
	new weapon
	switch(random_num(1, 6))
	{
		case 1 : weapon = fm_give_item(id, "weapon_glock18")
		case 2 : weapon = fm_give_item(id, "weapon_usp")
		case 3 : weapon = fm_give_item(id, "weapon_p228")
		case 4 : weapon = fm_give_item(id, "weapon_deagle")
		case 5 : weapon = fm_give_item(id, "weapon_elite")
		case 6 : weapon = fm_give_item(id, "weapon_fiveseven")
	}

	fm_set_weapon_ammo(weapon, 1)

	return PLUGIN_HANDLED
}

stock fm_give_item(index, const item[]) 
{
	if (!equal(item, "weapon_", 7) || equal(item, "ammo_", 5) || equal(item, "item_", 5))
		return 0

	new ent = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, item))
	if (!pev_valid(ent))
		return 0

	new Float:origin[3]
	pev(index, pev_origin, origin)
	set_pev(ent, pev_origin, origin)
	set_pev(ent, pev_spawnflags, pev(ent, pev_spawnflags) | SF_NORESPAWN)
	dllfunc(DLLFunc_Spawn, ent)

	new save = pev(ent, pev_solid)
	dllfunc(DLLFunc_Touch, ent, index)
	if (pev(ent, pev_solid) != save)
		return ent

	engfunc(EngFunc_RemoveEntity, ent)

	return -1
}

stock fm_set_weapon_ammo(entity, amount) 
        set_pdata_int(entity, OFFSET_CLIPAMMO, amount, OFFSET_LINUX_WEAPONS)


#6 hns NewUnivers

hns NewUnivers

    Новичок

  • Пользователь
  • Pip
  • 31 сообщений

Отправлено 21 Декабрь 2012 - 17:13

Как то так:

#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fakemeta>

#if cellbits == 32
const OFFSET_CLIPAMMO = 51
#else
const OFFSET_CLIPAMMO = 65
#endif
const OFFSET_LINUX_WEAPONS = 4

public plugin_init()
{
	register_plugin("RandWeapon T", "0.1", "Noovey")

	register_event("HLTV", "evNewRound", "a", "1=0", "2=0")
}

public evNewRound()
	set_task(0.1, "randPlayer", 765)

public randPlayer()
{
 	new players[32], count
	get_players(players, count, "ae", "TERRORIST")

	new player = players[random(count)]

	if(!player)
		return PLUGIN_HANDLED

	randWeapon(player)

	return PLUGIN_HANDLED
}

public randWeapon(id)
{
	new weapon
	switch(random_num(1, 6))
	{
		case 1 : weapon = fm_give_item(id, "weapon_glock18")
		case 2 : weapon = fm_give_item(id, "weapon_usp")
		case 3 : weapon = fm_give_item(id, "weapon_p228")
		case 4 : weapon = fm_give_item(id, "weapon_deagle")
		case 5 : weapon = fm_give_item(id, "weapon_elite")
		case 6 : weapon = fm_give_item(id, "weapon_fiveseven")
	}

	fm_set_weapon_ammo(weapon, 1)

	return PLUGIN_HANDLED
}

stock fm_give_item(index, const item[]) 
{
	if (!equal(item, "weapon_", 7) || equal(item, "ammo_", 5) || equal(item, "item_", 5))
		return 0

	new ent = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, item))
	if (!pev_valid(ent))
		return 0

	new Float:origin[3]
	pev(index, pev_origin, origin)
	set_pev(ent, pev_origin, origin)
	set_pev(ent, pev_spawnflags, pev(ent, pev_spawnflags) | SF_NORESPAWN)
	dllfunc(DLLFunc_Spawn, ent)

	new save = pev(ent, pev_solid)
	dllfunc(DLLFunc_Touch, ent, index)
	if (pev(ent, pev_solid) != save)
		return ent

	engfunc(EngFunc_RemoveEntity, ent)

	return -1
}

stock fm_set_weapon_ammo(entity, amount) 
        set_pdata_int(entity, OFFSET_CLIPAMMO, amount, OFFSET_LINUX_WEAPONS)

спасибо большое можеш еще выложить автомматы :D

#7 Noovey

Noovey

    Новичок

  • Пользователь
  • Pip
  • 21 сообщений

Отправлено 21 Декабрь 2012 - 17:20

Сразу бы написал...
В средующий раз напишу. На работу ехать надо...

#8 Leeksandr

Leeksandr

    Участник

  • Пользователь
  • PipPip
  • 81 сообщений

Отправлено 21 Декабрь 2012 - 17:28

спасибо большое можеш еще выложить автомматы


Измени вот этот код на пушки которые нужны и все.

case 1 : weapon = fm_give_item(id, "weapon_glock18")
      case 2 : weapon = fm_give_item(id, "weapon_usp")
      case 3 : weapon = fm_give_item(id, "weapon_p228")
      case 4 : weapon = fm_give_item(id, "weapon_deagle")
      case 5 : weapon = fm_give_item(id, "weapon_elite")
      case 6 : weapon = fm_give_item(id, "weapon_fiveseven")


#9 hns NewUnivers

hns NewUnivers

    Новичок

  • Пользователь
  • Pip
  • 31 сообщений

Отправлено 21 Декабрь 2012 - 18:08

спасибо большое можеш еще выложить автомматы


Измени вот этот код на пушки которые нужны и все.

case 1 : weapon = fm_give_item(id, "weapon_glock18")
      case 2 : weapon = fm_give_item(id, "weapon_usp")
      case 3 : weapon = fm_give_item(id, "weapon_p228")
      case 4 : weapon = fm_give_item(id, "weapon_deagle")
      case 5 : weapon = fm_give_item(id, "weapon_elite")
      case 6 : weapon = fm_give_item(id, "weapon_fiveseven")

понел спасибо :)

#10 Noovey

Noovey

    Новичок

  • Пользователь
  • Pip
  • 21 сообщений

Отправлено 22 Декабрь 2012 - 8:57

Все пушки.
Одному из террористов (случайному) даётся одно оружие (случайное) с одним патроном.

#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fun>

new weapons[24][] = {"weapon_usp","weapon_glock18","weapon_deagle","weapon_p228","weapon_elite","weapon_fiveseven",	"weapon_m3","weapon_xm1014","weapon_tmp","weapon_mac10","weapon_mp5navy","weapon_p90",
				"weapon_ump45","weapon_famas","weapon_galil",	"weapon_ak47","weapon_m4a1","weapon_sg552",	"weapon_aug",	"weapon_scout","weapon_sg550","weapon_awp","weapon_g3sg1","weapon_m249"}

public plugin_init()
{
	register_plugin("Random Weapon T", "1.0", "Noovey")

	register_event("HLTV", "evNewRound", "a", "1=0", "2=0")
}

public evNewRound()
	set_task(0.01, "randPlayer")

public randPlayer()
{
	new players[32], count
	get_players(players, count, "ae", "TERRORIST")

	new player = players[random(count)]

	if(!player)
		return PLUGIN_HANDLED

	cs_set_weapon_ammo(give_item(player, weapons[random_num(0, 23)]), 1)

	return PLUGIN_HANDLED
}


#11 Santiago

Santiago

    Постоянный пользователь

  • Модератор
  • 5 677 сообщений

Отправлено 22 Декабрь 2012 - 10:32

Надо же. Геши прикрутили чтоли?

#12 secret304

secret304

    Новичок

  • Пользователь
  • Pip
  • 1 сообщений

Отправлено 16 Май 2018 - 18:20

как этот плагин сделать так чтобы каждый 20 секунд терорристу дал автомат с 1 патроном

 

 

#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fakemeta>

#if cellbits == 32
const OFFSET_CLIPAMMO = 51
#else
const OFFSET_CLIPAMMO = 65
#endif
const OFFSET_LINUX_WEAPONS = 4

public plugin_init()
{
    register_plugin("RandWeapon T", "0.1", "Noovey")

    register_event("HLTV", "evNewRound", "a", "1=0", "2=0")
}

public evNewRound()
    set_task(0.1, "randPlayer", 765)

public randPlayer()
{
    new players[32], count
    get_players
(players, count, "ae", "TERRORIST")

    new player = players[random(count)]

    if(!player)
        return PLUGIN_HANDLED

    randWeapon
(player)

    return PLUGIN_HANDLED
}

public randWeapon(id)
{
    new weapon
    
switch(random_num(1, 6))
    {
        case 1 : weapon = fm_give_item(id, "weapon_glock18")
        case 2 : weapon = fm_give_item(id, "weapon_usp")
        case 3 : weapon = fm_give_item(id, "weapon_p228")
        case 4 : weapon = fm_give_item(id, "weapon_deagle")
        case 5 : weapon = fm_give_item(id, "weapon_elite")
        case 6 : weapon = fm_give_item(id, "weapon_fiveseven")
    }

    fm_set_weapon_ammo(weapon, 1)

    return PLUGIN_HANDLED
}

stock fm_give_item(index, const item[])
{
    if (!equal(item, "weapon_", 7) || equal(item, "ammo_", 5) || equal(item, "item_", 5))
        return 0

    new ent = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, item))
    if (!pev_valid(ent))
        return 0

    new Float:origin[3]
    pev(index, pev_origin, origin)
    set_pev(ent, pev_origin, origin)
    set_pev(ent, pev_spawnflags, pev(ent, pev_spawnflags) | SF_NORESPAWN)
    dllfunc(DLLFunc_Spawn, ent)

    new save = pev(ent, pev_solid)
    dllfunc(DLLFunc_Touch, ent, index)
    if (pev(ent, pev_solid) != save)
        return ent

    engfunc
(EngFunc_RemoveEntity, ent)

    return -1
}

stock fm_set_weapon_ammo(entity, amount)
set_pdata_int(entity, OFFSET_CLIPAMMO, amount, OFFSET_LINUX_WEAPONS)



Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных