Плагин на SM

Тема в разделе "Общие вопросы", создана пользователем Niyaz, 5 фев 2011.

  1. Niyaz

    Niyaz

    Сообщения:
    27
    Симпатии:
    0
    Всем привет. Решил я соурспавн изучать и сделал плагин, его суть в том что при написании команды в консоль он дает оружее или респавнит, но проблема в том что если ты умер плагин всеровно дает оружее, но не респавнит.

    Вот код:

    PHP:
    #include <sourcemod>
    #include <sdktools>
    #include <cstrike>

    public Plugin:myinfo =
    {
        
    name "giveWeapon",
        
    author "Fps",
        
    description "weapon",
        
    version "1.0.0.0",
        
    url "http://***/"
    }

    public 
    OnPluginStart()
    {
        
    RegConsoleCmd"m4"Command_m4);
        
    RegConsoleCmd"awp"Command_awp);
        
    RegConsoleCmd"ak"Command_ak);
        
    RegConsoleCmd"deg"Command_deg);
        
    RegConsoleCmd("res"Command_res);
    }
     
    public 
    Action:Command_m4(clientargs)
    {
        
    GivePlayerItem(client"item_assaultsuit");
        
    GivePlayerItem(client"weapon_m4a1");
        
    GivePlayerItem(client"weapon_flashbang");
        
    GivePlayerItem(client"weapon_hegrenade");
        return 
    Plugin_Handled;
    }

    public 
    Action:Command_awp(clientargs)
    {
        
    GivePlayerItem(client"item_assaultsuit");
        
    GivePlayerItem(client"weapon_awp");
        
    GivePlayerItem(client"weapon_flashbang");
        
    GivePlayerItem(client"weapon_hegrenade");
        return 
    Plugin_Handled;
    }

    public 
    Action:Command_ak(clientargs)
    {
        
    GivePlayerItem(client"item_assaultsuit");
        
    GivePlayerItem(client"weapon_ak47");
        
    GivePlayerItem(client"weapon_flashbang");
        
    GivePlayerItem(client"weapon_hegrenade");
        return 
    Plugin_Handled;
    }

    public 
    Action:Command_deg(clientargs)
    {
        
    GivePlayerItem(client"item_assaultsuit");
        
    GivePlayerItem(client"weapon_deagle");
        
    GivePlayerItem(client"weapon_flashbang");
        
    GivePlayerItem(client"weapon_hegrenade");
        return 
    Plugin_Handled;
    }

    public 
    Action:Command_res(clientargs)
    {
        
    CS_RespawnPlayer(client);
        return 
    Plugin_Handled;
    }
    В чем ошибка? :blush2:
     
  2. maza511

    maza511

    Сообщения:
    927
    Симпатии:
    456
    Во первых делай проверку, живой ты или мертвый.
    IsPlayerAlive
    Что б небыло безобразия.
     
  3. Niyaz

    Niyaz

    Сообщения:
    27
    Симпатии:
    0
    а с репавном что делать
    и еще , как мне сделать проверку на все команды
    а то даже спектатор оружее получает ))
     
  4. maza511

    maza511

    Сообщения:
    927
    Симпатии:
    456
    респавн работает
     
  5. Niyaz

    Niyaz

    Сообщения:
    27
    Симпатии:
    0
    работает но с багом он мертвого не правильно воскрешает
     
  6. maza511

    maza511

    Сообщения:
    927
    Симпатии:
    456
    Например?
    Ты скорей всего сам запутался, или спеком воскрешатся стал или еще чего.
     
    Последнее редактирование: 5 фев 2011
  7. Niyaz

    Niyaz

    Сообщения:
    27
    Симпатии:
    0
    Напримр я умер и начинаю следить за кем то , при вводе команды он не меня воскрешает, а респанит того за кем я следил хотя он живой. А если я не за кем не слежу он просто дает мне автомат но не оживляет.
     
  8. maza511

    maza511

    Сообщения:
    927
    Симпатии:
    456
    Бред вообще.. У тебя наверное установлено куча плагинов, которые ты сам делал также коряво, поэтому так и выходит.

    Сделай так:

    Код:
    public Action:Command_res(client, args) 
    {
    	if (GetClientTeam(client) > 1 && !IsPlayerAlive(client))
    	{
    		CS_RespawnPlayer(client);
    	}
    	return Plugin_Handled; 
    } 
    
     
    Niyaz нравится это.
  9. Niyaz

    Niyaz

    Сообщения:
    27
    Симпатии:
    0
    Серв чистый ни одного плагина кроме этого