Свободная лицензия на открытый/свободный код

2,932
44
598
Доброго времени суток Земляне и Чужие!
Сегодня у меня появился вопрос: Какую стоит выбрать лицензию на сервесе GitHab что бы мой код был можно использовать, копировать и модифицировать программное обеспечение на ваше усмотрение. ПО можно предоставлять бесплатно или даже продавать. Кароче ограничений нет.
 
Решение
Не обязательно какую-то выбирать. Ты можешь там так и написать: "Можно использовать, копировать и модифицировать программное обеспечение на ваше усмотрение. ПО можно предоставлять бесплатно или даже продавать ". И это будет лицензия
2,932
44
598
Думою MIT license (Massachusetts Institute of Technology) мне отлично поможет! Хотя в прицепе можно же и не лецензировать свой код! Хм... Что же выбрать? В принципе я хочу что бы мой код мог взять кто угодно когда угодно и делал с ним что угодно!
 
2,932
44
598
Узбагойзя. С любой лицензией твой код возьмёт кто угодно и сделает с ним что угодно.
Это я и так понимаю) Но просто хочется всё цивильно сделать! А не так как на фото снижу \/
YfE3fPTg7DA.jpg
 

Eifel

Модератор
1,623
78
608
Не обязательно какую-то выбирать. Ты можешь там так и написать: "Можно использовать, копировать и модифицировать программное обеспечение на ваше усмотрение. ПО можно предоставлять бесплатно или даже продавать ". И это будет лицензия
 
5,018
47
783
Гарик я тебя уверяю, твой код даже без лицензии никто не возьмет. Инфа 200%
 
2,932
44
598
Эх... Вы всё время переходите на личности! В интернете НЕТ ЛИЧНОСТЕЙ! Есть одни лишь аккаунты за которыми скрываться старушки, дети, насильники, наркоманы, родители, школьники, мужчины, девушки, алкоголики, Гарики, Максими, Эдуарды, Марины, Влады и так дальше!
У моего аккаунта есть название: @Vmaini и я прошу вас называть меня @Vmaini!

твой код даже без лицензии никто не возьмет
Почему это? Что с ним не так? Если хочешь можешь глянуть: GitHub - GTE-Garik1303/-BETA-OreDeposits-mod: GTE java projects
 

Eifel

Модератор
1,623
78
608
Совет: можно было так же передавать в конструктор HarvestLevel, или чайны юзать как в регистре у тебя(если там можно), вместо того чтоб делать 4 разных класса для 4 разных харвест уровней
 
5,018
47
783
Посмотрел. Немного лучше чем раньше но все равно говно. Зачем ты на каждый блок новый класс создаешь? При регистрации после скобочек можно написать .setHarvestLevel("pickaxe", 4); Они у тебя что, особенные чем то? Нет, обычные блоки. Ну и сделай один BasicBlock а потом просто его обьекты делай - так удобнее. И вообще это можно в конструктор сразу передавать...
И еще - эти методы с большой буквы просто божественны.
Методы надо писать ВСЕГДА с маленькой буквы. Ты не настолько крутой программист чтобы пренебрегать общепринятыми правилами.
Это @Dahaka так может делать, и то, он соблюдает кодестайл. Но точно не ты.
Ну и да, как я и сказал. Ты чего про лицензию то начал? Ты думаешь, скопировав текст из учебника, ты можешь теперь считать его своим, лол?)))
P.S В моем коде тоже не всегда соблюдается кодестайл, но я по крайней мере об этом знаю, и это признаю.

@Vmaini и я прошу вас называть меня @Vmaini!
Какой ты Vmani? Из тебя Vmani как из меня Dahaka. Ты чистый Гарик
 
2,932
44
598
Ну и да, как я и сказал. Ты чего про лицензию то начал? Ты думаешь, скопировав текст из учебника, ты можешь теперь считать его своим, лол?)))
Лицензию я пока что вообще не трогал. (Выбрал какую-то уже и не помню какую и забил на неё. Сегодня только вспомнил про лицнзию. Это пока что наработки и БЕТА версия)

облюдает кодестайл
Спасибо почитаю про КодСтайл на Хабре. Может ещё что-то посоветуешь?

P.S В моем коде тоже не всегда соблюдается кодестайл, но я по крайней мере об этом знаю, и это признаю.
Если ты бросаешь бумажку возле урны и зная что это не хорошо, но продолжаешь это делать это нормально по твоему? Или допустим если ты пробегаешь через дорогу в неположенном месте, и зная что это неправильно всё ровно продолжаешь так делать это хорошо?

При регистрации после скобочек можно написать .setHarvestLevel("pickaxe", 4);
Лично у меня ругается среда на то что не можно преобразовать из пустоты в блок...
Java:
    //Регестрация
public static Block QuartzOre = new OreBlockFirstHarvestLevel(Material.rock, 1).setCreativeTab(CreativeTabs.tabBlock)
            .setBlockName("QuartzOre").setHardness(3.0F).setResistance(5.0F).setStepSound(Block.soundTypePiston)
            .setBlockTextureName("oredeposits:quartz_ore").setHarvestLevel("pickaxe", 4);
Java:
//Базовый блок (Пример)
public class OreBlockFirstHarvestLevel extends Block {
   
    public OreBlockFirstHarvestLevel(Material material, float hardness) {
        super(material);
       
        this.setHarvestLevel("toolClass", level);
       
    }
}
Как надо использовать setHarvestLevel ?
 
5,018
47
783
Если ты бросаешь бумажку возле урны и зная что это не хорошо, но продолжаешь это делать это нормально по твоему? Или допустим если ты пробегаешь через дорогу в неположенном месте, и зная что это неправильно всё ровно продолжаешь так делать это хорошо?
Ну ты сравнил жопу с пальцем:)
 
2,932
44
598
Всё равно думает что это пустота: "Type mismatch: cannot convert from void to Block"
Java:
    //Регестрация
    public static Block QuartzOre = new OreBlockFirstHarvestLevel(Material.rock, 1).setCreativeTab(CreativeTabs.tabBlock)
            .setBlockName("QuartzOre").setHardness(3.0F).setResistance(5.0F).setStepSound(Block.soundTypePiston)
            .setBlockTextureName("oredeposits:quartz_ore").setHarvestLevel("pickaxe", 4);
Java:
    //Базовый блок
    public class OreBlockFirstHarvestLevel extends Block {
    
    public OreBlockFirstHarvestLevel(Material material, float hardness, int level) {
        super(material);
        
        this.setHarvestLevel("pickaxe", level);
        
    }
}
Хоть убей не понимаю почему он не может преобразовать! :rolleyes:
 

Eifel

Модератор
1,623
78
608
Убери его оттуда .setHarvestLevel("pickaxe", 4); он у тебя уже в конструкторе класса есть и возможно он возвращает void поэтому ты не можешь его использовать в чайнах.
 
Последнее редактирование:
2,932
44
598
@Thunder большое тебе спасибо! Очень помог!
В итоге решил это вот так:
Java:
public static Block QuartzOre = new OreBlockFirstHarvestLevel(Material.rock, 1).setCreativeTab(CreativeTabs.tabBlock)
            .setBlockName("QuartzOre").setHardness(3.0F).setResistance(5.0F).setStepSound(Block.soundTypePiston)
            .setBlockTextureName("oredeposits:quartz_ore");
Java:
public static Block QuartzOre = new OreBlockFirstHarvestLevel(Material.rock, 1, 4).setCreativeTab(CreativeTabs.tabBlock)
            .setBlockName("QuartzOre").setHardness(3.0F).setResistance(5.0F).setStepSound(Block.soundTypePiston)
            .setBlockTextureName("oredeposits:quartz_ore");

Java:
//Базовый блок
public class OreBlockFirstHarvestLevel extends Block {
    
    public OreBlockFirstHarvestLevel(Material material, float hardness, int level) {
        
        super(material);
        
        this.setHarvestLevel("pickaxe", level);
        
    }
}
 
Сверху