Хостинг серверов Minecraft playvds.com
  1. Вы находитесь в русском сообществе Bukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на русский язык плагины наших собратьев из других стран.
    Скрыть объявление

Помогите создание "реакции" на комманду, или "помогите с кодом".

Тема в разделе "Разработка плагинов для новичков", создана пользователем ski5557, 27 авг 2014.

Статус темы:
Закрыта.
  1. Автор темы
    ski5557

    ski5557 Активный участник Пользователь

    Баллы:
    61
    Добрый день господа.
    Для начала - буду крайне благодарен любой помощи.

    Пишу плагин вайтлиста на основе sql.(пишу потому что сам не нашел того что мне нужно) основа готова, все работает как мне надо.
    Но. нужно создать комманду, и к этому - что бы оно работало с аргументами. ( именно это я не нашел и не смог понять как сделать ).
    К примеру: /wh add PLAYERNAME
    нужен код, ( или участок кода ), с самим евентом на комманду, и передаваемым значением PLAYERNAME.
    Лучше всего с комментариями ( как можно больше ) с разъяснением синтаксиса, дабы я разобрался что это такое, и как это работает, и больше не мучал форум своими вопросами. :whistle:

    Кстати говоря. Если плагин будет работать хорошо, может даже в народ выложу. Так как на дев бакките есть только один плагин под мои нужды, но у него баг с удалением игроков, обновлением с ДБ, и как я понял еще баг с драйвером. это одновременно очень сильно "мешает", и не оставляет выбора кроме как самому написать.

    В любом случае - всем зарранее спасибо. :good:
     
  2. Хостинг MineCraft
    <
  3. serega6531

    serega6531 Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    shkurovs
    Туториал по обработке команды есть на официальном вики. А такой плагин, кстати, я давно выкладывал.
     
  4. Автор темы
    ski5557

    ski5557 Активный участник Пользователь

    Баллы:
    61
    Если бы я хотел читать тонны американских инструкций, и понимал бы о чем там идет речь - я бы наверно сюда не написал. сечешь?
    Форум для этого и создан что бы люди задавали разного рода вопросов. В правилах форума нету главы " НЕ СПРАШИВАТЬ ТО, ЧТО МОЖНО НАЙТИ НА ОФФ ИСТОЧНИКАХ!". Или чего либо подобного. В ином случае пришлось бы заварнить\пер****ить большую часть форума.
    Я много не прошу. всего лишь участок кода, хотя бы с возможностью одного передаваемого значения с строкой playername. И если твой ранг "девеловер" не является в шутку, для тебя это мелочь.
     
  5. serega6531

    serega6531 Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    shkurovs
    Вот это обидно было. Попробую объяснить, хотя я и с телефона. Для начала команду нужно объявить в plugin.yml. Потом в onEnable пишем getCommand("yourcommand").setExecutor(new CommandExecutor()), а ide подскажет, какая функция должна быть внутри. Команда будет храниться в переменной типа Command, а ее аргументы в Sting[].
     
  6. Автор темы
    ski5557

    ski5557 Активный участник Пользователь

    Баллы:
    61
    Судя по всему это то, что мне нужно. Вот сейчас мне куда больше понятно, чем двух часовые попытки осознать все это через американские форумы.
    Вопрос только такой. Куда указывать аргументы? или они опциональны, и "включаются" только при их вводе? ( к примеру тот же playername для передачи )

    а в Plugin.yml уже есть комманды. там было все куда понятнее, и все вбил как мне надо.
     
  7. serega6531

    serega6531 Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    shkurovs
    Они получаются из массива строк. Например, при вводе /yourcommand test1 test2 в массиве будет два значения - test1 и test2.
     
  8. BeYkeR

    BeYkeR Старожил Девелопер Пользователь

    Баллы:
    173
  9. serega6531

    serega6531 Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    shkurovs
     
  10. Автор темы
    ski5557

    ski5557 Активный участник Пользователь

    Баллы:
    61
    Вот! Это именно то что мне надо. Крайне благодарен за попытку мне обьяснить принцип, к тому же с телефона :rolleyes:
    Спасибо огромное. Пошел дописывать. :good:[DOUBLEPOST=1409138209,1409138144][/DOUBLEPOST]Там и на русском есть. По ссылке даже видно. " Ru ". Байкер. и тебе спасибо.
     
  11. serega6531

    serega6531 Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    shkurovs
    Я же вас туда и посылал -_-
     
  12. BeYkeR

    BeYkeR Старожил Девелопер Пользователь

    Баллы:
    173
    Вообще-то я Бейкер. И прошу, хватит меня так называть, вы таким образом меня оскорбляете :cry:. (Это я для "остальных", которые до сих пор не видят разницы между "E" и "A").
     
  13. serega6531

    serega6531 Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    shkurovs
    Байкер, не агрись.
     
  14. Автор темы
    ski5557

    ski5557 Активный участник Пользователь

    Баллы:
    61
    разве? у нас разные понятия "оффициальное ... ". у меня понятие оффициальный api ( под понятием инструкция ) - http://jd.bukkit.org/rb/apidocs/ . И другие подобные русскоязычные сайты - я не встречал. Прошу прощения в любом случае. не хочу нагнетать конфликт. Ну и еще раз спасибо. // Знал бы как поднять баллы на данном форуме - поднял в качестве благодарности.
     
  15. ql_Nik_lp

    ql_Nik_lp Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    q-nik-p
    Имя в Minecraft:
    ql_Nik_lp
    Если для вас проблема посмотреть в доках или на вики даже такую элементарщину, то вам не стоит браться за это.
    Сюда надо писать после 3-ей страницы в Google

    И да, нет совершенно никакой необходимости писать весь пост вот так,
    вы просто показываете свою недалекость.
     
  16. CraftCoder

    CraftCoder Старожил Пользователь

    Баллы:
    108
    Имя в Minecraft:
    CraftCoderr
    Да, но искать на rubakkit'e тебе никто не запрещял.
     
  17. Автор темы
    ski5557

    ski5557 Активный участник Пользователь

    Баллы:
    61
    Проблема сама в отсутсвии информации. Я долго искал подробное обьяснение функции OnCommand и синтаксиса. В итоге не нашел ( по крайней мере того чего нужно было мне ), в итоге решил написать сюда.
    а остальное, за что мне " не стоит браться " - готово уже сутки. Плагин и программа для просмотра у кого есть доступ к серверу.

    Но судя по всему участникам форума лучше потыкать пальцем в кого то, сказать мол " ты батюшка убог если не можешь найти", высмеивать, и тратить свое время на пустые разговоры, вместо того что бы открыть свой плагин, ( если конечно кто то писал ), скопировать 5-10 строк, дописать кое куда комментарии, и вставить сюда и закрыть тему. Тем самым помочь человеку.

    А текст я пометил специально, так как на таких форумах довольно многие не умеют читать большой обьем текста ( внимательно ), поэтому и пометил основную цель. Дабы даже троль 9000 лвл знал задачу.
     
  18. Den_Abr

    Den_Abr Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    Den_Abr
    Имя в Minecraft:
    Den_Abr
    Да, такие для кого смертный грех прочитать документацию об основах языка, читать уже готовые решения на английском языке(да кому он вообще нужен? лучше писать код на русском), и уж тем более посмотреть исходники готовых плагинов(они же непонятные) на самом деле убоги. Лучше же ведь задать избитый вопрос ещё раз, да и помозолить глаза его читателей, а потом конечно тех, кто указывает на вполне очевидные вещи(прочитать уже данные давным давно ответы, изучить основы языка), назвать никчёмными существами и пытаться доказать свою правую позицию.

    Если вы не собираетесь изучать плагинописание(естественно, изучив сначала язык, а не наоборот), то этот раздел не для вас. Кому понравится писать за вас половину кода?
    Заранее попрошу не высказывать своё мнение о моей неправоте, дабы не повторился двустраничный диалог, где ув. @ptnk пытался объяснить подобному "новичку" те же самые вещи.(в свою очередь подобные темы я не могу оставить без внимания)
     
  19. Автор темы
    ski5557

    ski5557 Активный участник Пользователь

    Баллы:
    61
    Дело в том, что я не хочу тратить 4-5 часа на перевод статьи \ видео, когда можно получить ответ от русских людей, подождав всего лишь час, и еще минут 5-10 на понятие всего в целом. Да. может подобные вопросы задавались, по большей части точного и понятного ответа ДЛЯ МЕНЯ - я не нашел. А уважаемые Сережа и "бейкер", дали мне ответ и приблизительное понятие о всем этом. За что я им крайне благодарен, и смог наконец дописать то, что я пытался с прошлого вечера.

    Я просил половину кода? Я просил 5-10 строк(или же 1 с пустым блоком) , которые кто то да может вытянуть из своего исходника, и еще 50-100 раз нажать на клавиши, и написать разъяснение человеку, который ну не может понять что это такое.
    Я все написал еще сутки назад, и сутки назад оно УЖЕ работало. У плагина не было ТОЛЬКО команды для добавления\удаления ника в бд через сам плагин,

    А вы то есть не просили на форуме помощи, вещи которой не понимали изза отсутствия подробной объясняющей информации? То есть вы родились знатоком, и уже знали яву, и параллельно баккит апи и его синтаксис? И сразу могли писать некстген вещи? Сомневаюсь. И вы наверно точно так же писали на форум вопросы, ответы которых можно было "легко" найти в интернете, как вы собственно говорите я не сделал.
     
  20. Den_Abr

    Den_Abr Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    Den_Abr
    Имя в Minecraft:
    Den_Abr
    Я может и задавал вопросы(не больше 10 штук) на этом форуме, но они были уровня намного выше и перед началом написания плагинов я как минимум уже познакомился с языка.
    Спустя короткое время пришло озарение, что все ответы на мои вопросы уже даны и можно просто задать запрос в гугл "bukkit your question" и получить кучу ответов, на перевод которых уходит, поравка не 4-5 часов, а минут.
     
  21. Автор темы
    ski5557

    ski5557 Активный участник Пользователь

    Баллы:
    61
    Дело не в языке. я знаю пару и других языков, на которых могу довольно не плохие программы написать. яву я вообще за день "выучил". По крайней мере на уровень плагинов, и я без единстенного вопроса на форумы \ в группы написал основной алгоритм.
    Проблема не в том что есть ответы, а в другом. повторюсь. Проблема была в отсутсвии информации. на понятном языке, где все понятно сформулированно ( к примеру - это функция значит - бла бла бла ) где все понятно и просто рассписанно. Что такое CommandExute, что такое set exutor, итд. итп. И везде уже готовые функции записанны, что тоже мешает, понятию синтаксиса записи, и понятия определенных мест с нуля. Возможно вы находили информацию нужную вам, и сразу все понимали. Но увы. Мне тяжело за сутки выучить апи баккита, уроков которых нету в полный рост. и понять где ставится массив, где стринг формат, итд итп. Да, возможно тут причастна и моя невнимательность. Однако, в целом суть не меняет. А так как наши Русские ребята специалисты во всем, я поэтому и написал сюда. в надежде что мне дадут ответ. И - чудо свершилось. Мне дали ответ. И вскоре в течении малого времени я дописал что мне было нужно. "Мир, радуга, бобры" как говорится.
     
Статус темы:
Закрыта.

Поделиться этой страницей