Свои звуки для моба

101
3
Собственно, прошу помочь разобраться, как мобу применить сови собственные звуки.
Ванильные я понял как сделать:
Код:
@Override
    protected String getHurtSound()
    {
        return "mob.zombie.hurt";
    }

А куда прописать свои? Пробовал поменять mob.zombie.hurt на моймод.звук, но ничего не вышло.
Дайте ориентир, куда копать?
Спасибо.
 
101
3
timaxa007 написал(а):
По этому уроку создал assets/sounds.json с текстом:
Код:
{
  "amobs001.hurt": {
    "category": "hostile",
    "sounds": [
      "amobs/amobs001_hurt"
    ]
  },
  "amobs001.death": {
    "category": "hostile",
    "sounds": [
      "amobs/amobs001_death"
    ]
  },
  "amobs001.growl": {
    "category": "hostile",
    "sounds": [
      "amobs/amobs001_growl1"
    ]
  }
}
После закинул нужные звуки в assets/sounds/звуки.ogg
Не могу понять, как их вызвать в коде?
В уроке указана строчка
Код:
world.playSoundEffect(20, 70, 20, "myawesomemod:bunnyBegA", 1, 1);
но с чем ее едят?
 

timaxa007

Модератор
5,831
409
672
assets/myawesomemod/sounds.json
[merge_posts_bbcode]Добавлено: 13.02.2016 11:51:38[/merge_posts_bbcode]

world.playSoundEffect(20, 70, 20, "myawesomemod:amobs001.hurt", 1, 1);

[merge_posts_bbcode]Добавлено: 13.02.2016 11:52:53[/merge_posts_bbcode]

И вроде категория нужна mob, а не hostile.

[merge_posts_bbcode]Добавлено: 13.02.2016 11:55:44[/merge_posts_bbcode]

playSoundEffect
Код:
    /**
     * Play a sound effect. Many many parameters for this function. Not sure what they do, but a classic call is :
     * (double)i + 0.5D, (double)j + 0.5D, (double)k + 0.5D, 'random.door_open', 1.0F, world.rand.nextFloat() * 0.1F +
     * 0.9F with i,j,k position of the block.
     */
 
101
3
Посмотрел исходники EnderZoo.
Там сделано так
Код:
private static final String SND_DEATH = "enderzoo:direwolf.death";
---- код ----
@Override
  protected String getDeathSound() {
    return SND_DEATH;
  }
Сделал по аналогии у себя, но почему-то не работает... Странно...

Выдает ошибку: Unable to play unknown soundEvent: amobs:amobs.amobs001_death
 
1,137
5
3
{
"amobs.amobs001_death": {
"category": "player",
"sounds": [
"amobs:amobs.amobs001_death"
]
}
}
[merge_posts_bbcode]Добавлено: 13.02.2016 13:05:59[/merge_posts_bbcode]

В sounds.json
 
101
3
wilah написал(а):
{
"amobs.amobs001_death": {
"category": "player",
"sounds": [
"amobs:amobs.amobs001_death"
]
}
}
[merge_posts_bbcode]Добавлено: 13.02.2016 13:05:59[/merge_posts_bbcode]

В sounds.json
Спасибо, все заработало. ;) Сделал по аналогии EnderZoo.
Вопрос - почему надо писать в json категорию player?
На что это влияет и какие еще значения могут быть?
 
1,137
5
3
В настройках можно отключать разные звуки(игрока, мира, музыку). Player - звуки от игрока
 
Сверху