Ver Mensaje Individual
  #1 (permalink)  
Antiguo 22/11/2015, 22:07
BrunoSebastianAlod
 
Fecha de Ingreso: abril-2013
Mensajes: 32
Antigüedad: 11 años, 1 mes
Puntos: 0
If fuera de un void - C#

Hola. Antes que nada quiero aclarar que estoy aprendiendo C# por lo que puedo ser muy ignorante.

Este es mi código:
Código:
   ...
        bool HasPermission(BasePlayer player, string perm) => permission.UserHasPermission(player.UserIDString, perm);
        private ItemSkinDirectory.Skin defaultSkin;
        private readonly List<int> randomizedTasks = new List<int>();



        private void Loaded()
        {
            permission.RegisterPermission("testeamos", this);
            defaultSkin = new ItemSkinDirectory.Skin
            {
                name = "Default",
                id = 0
            };
        }

        private void OnItemCraft(ItemCraftTask task, BasePlayer crafter, BasePlayer player)
        {
            var skins = ItemSkinDirectory.ForItem(task.blueprint.targetItem).ToList();
            if (skins.Count < 1 || task.skinID != 0) return;
            randomizedTasks.Add(task.taskUID);
            skins.Add(defaultSkin);
            task.skinID = skins.GetRandom().id;
        }

        private void OnItemCraftFinished(ItemCraftTask task, Item item)
        {
            if (!randomizedTasks.Contains(task.taskUID)) return;
            if (task.amount == 0)
            {
                randomizedTasks.Remove(task.taskUID);
                return;
            }
            var skins = ItemSkinDirectory.ForItem(task.blueprint.targetItem).ToList();
            skins.Add(defaultSkin);
            task.skinID = skins.GetRandom().id;
        }
    ...
Lo que quiero hacer es poner este if: if (!HasPermission(player, "testeamos")) return; por fuera de todo ese código. Osea, algo así como:

Código:
if (!HasPermission(player, "testeamos")){
//todo el codigo
}
Pero el problema es que el if funcione tengo que hacer un void así:

Código:
void x(BasePlayer player)
        { 
if (!HasPermission(player, "testeamos")){
//todo el codigo
}
}
Pero no se puede poner un void dentro de otro.

Bueno, espero que me entiendan. Sé que es un desastre pero entiendan que soy muy muy muy novato en esto.

¡Muchisimas gracias!