Официалният форум на iPlay.bg 

Този раздел е създаден специално за проблеми и въпроси за направата на плъгини или преработката на вече съществуващи кодове.
 #397676  от black_heart
 пон авг 29, 2016 11:42 pm
как да направя така че след като се спауне играч да му дава нещата от ранк системата ми?
Например е 10 левъл и трябва да получи Deagle.
Искам след като се спауне да му дава Deagle-a.
 #397678  от zolfeca
 пон авг 29, 2016 11:55 pm
Код: Избери всички
RegisterHam(Ham_Spawn, "player", "fwdPlayerSpawn", 1) // plugin init
public fwdPlayerSpawn(id){
 if(Level[id] == 10) {
 give_item( id, "weapon_deagle" ) 
}
}
Нещо такова трябва да изглежда.
 #397679  от OciXCrom™
 пон авг 29, 2016 11:57 pm
Код: Избери всички
#include <amxmodx>
#include <fun>
#include <hamsandwich>

public plugin_init()
    RegisterHam(Ham_Spawn, "player", "OnPlayerSpawn", 1)

public OnPlayerSpawn(id)
{
    if(!is_user_alive(id))
        return

    switch(LEVEL[id])
    {
        case 10: give_item(id, "weapon_deagle")
    }
} 
На мястото на LEVEL въвеждаш съответната променлива, която се ползва за левъла. Можеш да добавиш различни неща за различни левъли, използвайки case <левъл>: кодът.

Sent from my HTC Desire 610 using Tapatalk
 #397693  от black_heart
 вт авг 30, 2016 9:43 am
OciXCrom™ написа:
Код: Избери всички
#include <amxmodx>
#include <fun>
#include <hamsandwich>

public plugin_init()
    RegisterHam(Ham_Spawn, "player", "OnPlayerSpawn", 1)

public OnPlayerSpawn(id)
{
    if(!is_user_alive(id))
        return

    switch(LEVEL[id])
    {
        case 10: give_item(id, "weapon_deagle")
    }
} 
На мястото на LEVEL въвеждаш съответната променлива, която се ползва за левъла. Можеш да добавиш различни неща за различни левъли, използвайки case <левъл>: кодът.
а как да го направя например след като се спауне и минат 5 секунди и тогава да го дава?
 #397695  от OciXCrom™
 вт авг 30, 2016 11:08 am
Според моя код: прехвърляш всичко от OnPlayerSpawn() в отделна функция, примерно public giveExtras(id), а в предишната само задаваш таск: set_task(5.0, "giveExtras", id).

Sent from my HTC Desire 610 using Tapatalk
 #397697  от black_heart
 вт авг 30, 2016 11:18 am
Дава ми еррор
Welcome to the AMX Mod X 1.8.1-300 Compiler.
Copyright (c) 1997-2013 ITB CompuPhase, AMX Mod X Team

Error: Undefined symbol "LEVEL" on line 102
Error: Invalid expression, assumed zero on line 102
Error: Invalid expression, assumed zero on line 102
Error: Too many error messages on one line on line 102

Compilation aborted.
4 Errors.

Код: Избери всички
public player_spawn(id)
{
	set_task(5.0, "give_reward", id)
}

public give_reward(id)
    {
    	new team = get_user_team(id)
    	if(!is_user_alive(id))
	return
	switch(LEVEL[id])
	
        case 1:
        {
	    if(!is_user_alive(id)) return;
	    if (cs_get_user_team(id) == CS_TEAM_CT 
            set_user_health( id, get_user_health( id ) + 5 );
        }
           
           
 #397700  от OciXCrom™
 вт авг 30, 2016 12:04 pm
На мястото на LEVEL въвеждаш съответната променлива, която се ползва за левъла.