bunnies!
|
@ -62,7 +62,7 @@ petz.on_rightclick = function(self, clicker)
|
||||||
petz.capture(self, clicker, true)
|
petz.capture(self, clicker, true)
|
||||||
minetest.chat_send_player("singleplayer", S("Your").." "..S(pet_name).." "..S("has been captured")..".")
|
minetest.chat_send_player("singleplayer", S("Your").." "..S(pet_name).." "..S("has been captured")..".")
|
||||||
elseif self.breed and wielded_item_name == petz.settings[self.type.."_breed"] and not(self.is_baby) then
|
elseif self.breed and wielded_item_name == petz.settings[self.type.."_breed"] and not(self.is_baby) then
|
||||||
minetest.chat_send_all("test="..petz.settings[self.type.."_breed"])
|
--minetest.chat_send_all("test="..petz.settings[self.type.."_breed"])
|
||||||
petz.breed(self, clicker, wielded_item, wielded_item_name)
|
petz.breed(self, clicker, wielded_item, wielded_item_name)
|
||||||
elseif (wielded_item_name == "petz:dreamcatcher") and (self.tamed == true) and (self.is_pet == true) and is_owner then
|
elseif (wielded_item_name == "petz:dreamcatcher") and (self.tamed == true) and (self.is_pet == true) and is_owner then
|
||||||
petz.put_dreamcatcher(self, clicker, wielded_item, wielded_item_name)
|
petz.put_dreamcatcher(self, clicker, wielded_item, wielded_item_name)
|
||||||
|
|
|
@ -34,6 +34,7 @@ Blueberry Muffin=Muffin de mirtilo
|
||||||
Bone=Ossos
|
Bone=Ossos
|
||||||
Bottle with Moth=Garrafa com traça
|
Bottle with Moth=Garrafa com traça
|
||||||
Brushed=Escovado
|
Brushed=Escovado
|
||||||
|
Bunny=Coelhinho
|
||||||
Butterfly=Borboleta
|
Butterfly=Borboleta
|
||||||
Butterfly Showcase=Exibição de borboletas
|
Butterfly Showcase=Exibição de borboletas
|
||||||
Buy=Compre
|
Buy=Compre
|
||||||
|
@ -165,12 +166,14 @@ Prince Crown=A coroa do príncipe
|
||||||
Prince of North Coat=Jaqueta do Príncipe do Norte
|
Prince of North Coat=Jaqueta do Príncipe do Norte
|
||||||
Queen Ant=Formiga Rainha
|
Queen Ant=Formiga Rainha
|
||||||
Queen Bee=Abelha Rainha
|
Queen Bee=Abelha Rainha
|
||||||
|
Rabbit Hide=Couro de coelho
|
||||||
Rat=Rato
|
Rat=Rato
|
||||||
Raw Chicken=Frango cru
|
Raw Chicken=Frango cru
|
||||||
Raw Ducky=Pato cru
|
Raw Ducky=Pato cru
|
||||||
Raw Goat=Caprino cru
|
Raw Goat=Caprino cru
|
||||||
Raw Parrot=Papagaio Cru
|
Raw Parrot=Papagaio Cru
|
||||||
Raw Porkchop=Costeleta de porco crua
|
Raw Porkchop=Costeleta de porco crua
|
||||||
|
Raw Rabbit=Coelho cru
|
||||||
Roasted Chicken=Frango Assado
|
Roasted Chicken=Frango Assado
|
||||||
Roasted Chicken Legs=Coxas de frango assado
|
Roasted Chicken Legs=Coxas de frango assado
|
||||||
Roasted Ducky=Pato assado
|
Roasted Ducky=Pato assado
|
||||||
|
@ -179,6 +182,7 @@ Roasted Goat Meat=Carne assada de caprino
|
||||||
Roasted Lamb Chop=Costeleta de cordeiro assada
|
Roasted Lamb Chop=Costeleta de cordeiro assada
|
||||||
Roasted Parrot=Papagaio Assado
|
Roasted Parrot=Papagaio Assado
|
||||||
Roasted Porkchop=Costeleta de porco assada
|
Roasted Porkchop=Costeleta de porco assada
|
||||||
|
Roasted Rabbit=Coelho assado
|
||||||
Rooster=Galo
|
Rooster=Galo
|
||||||
Saddle=Sela
|
Saddle=Sela
|
||||||
Saddlebag=Sacos de Sela
|
Saddlebag=Sacos de Sela
|
||||||
|
|
|
@ -34,6 +34,7 @@ Blueberry Muffin=Blaubeermuffin
|
||||||
Bone=Knochen
|
Bone=Knochen
|
||||||
Bottle with Moth=Flasche mit Motte
|
Bottle with Moth=Flasche mit Motte
|
||||||
Brushed=Gebürstet
|
Brushed=Gebürstet
|
||||||
|
Bunny=Kaninchen
|
||||||
Butterfly=Schmetterling
|
Butterfly=Schmetterling
|
||||||
Butterfly Showcase=Schmetterling-Vitrine
|
Butterfly Showcase=Schmetterling-Vitrine
|
||||||
Buy=Kaufen
|
Buy=Kaufen
|
||||||
|
@ -165,6 +166,7 @@ Prince Crown=Prinzenkrone
|
||||||
Prince of North Coat=Umhang des Prinz des Nordens
|
Prince of North Coat=Umhang des Prinz des Nordens
|
||||||
Queen Ant=Ameisenkönigin
|
Queen Ant=Ameisenkönigin
|
||||||
Queen Bee=Bienenkönigin
|
Queen Bee=Bienenkönigin
|
||||||
|
Rabbit Hide=Kaninchenfell
|
||||||
Rat=Ratte
|
Rat=Ratte
|
||||||
Raw Chicken=Rohes Hühnchen
|
Raw Chicken=Rohes Hühnchen
|
||||||
Raw Ducky=Rohes Entlein
|
Raw Ducky=Rohes Entlein
|
||||||
|
@ -172,6 +174,7 @@ Raw Goat=Rohes Ziege
|
||||||
Raw Parrot=Roher Papagei
|
Raw Parrot=Roher Papagei
|
||||||
Raw Porkchop=Rohes Schweinekotelett
|
Raw Porkchop=Rohes Schweinekotelett
|
||||||
Roasted Chicken=Gebratenes Hühnchen
|
Roasted Chicken=Gebratenes Hühnchen
|
||||||
|
Raw Rabbit=Rohe Kaninchen
|
||||||
Roasted Chicken Legs=Gebratene Hühnchenkeule
|
Roasted Chicken Legs=Gebratene Hühnchenkeule
|
||||||
Roasted Ducky=Gebratenes Entlein
|
Roasted Ducky=Gebratenes Entlein
|
||||||
Roasted Frog Leg=Gebratener Froschschenkel
|
Roasted Frog Leg=Gebratener Froschschenkel
|
||||||
|
@ -179,6 +182,7 @@ Roasted Goat Meat=Gebratenes Ziegenfleisch
|
||||||
Roasted Lamb Chop=Gebratene Lammkeule
|
Roasted Lamb Chop=Gebratene Lammkeule
|
||||||
Roasted Parrot=Gebratener Papagei
|
Roasted Parrot=Gebratener Papagei
|
||||||
Roasted Porkchop=Gebratenes Schweinekotelett
|
Roasted Porkchop=Gebratenes Schweinekotelett
|
||||||
|
Roasted Rabbit=Gebratenes Kaninchen
|
||||||
Rooster=Hahn
|
Rooster=Hahn
|
||||||
Saddle=Sattel
|
Saddle=Sattel
|
||||||
Saddlebag=Satteltasche
|
Saddlebag=Satteltasche
|
||||||
|
|
|
@ -34,6 +34,7 @@ Blueberry Muffin=Madalena de arándano
|
||||||
Bone=Hueso
|
Bone=Hueso
|
||||||
Bottle with Moth=Botella con polilla
|
Bottle with Moth=Botella con polilla
|
||||||
Brushed=Cepillado
|
Brushed=Cepillado
|
||||||
|
Bunny=Conejo
|
||||||
Butterfly=Mariposa
|
Butterfly=Mariposa
|
||||||
Butterfly Showcase=Expositor de mariposas
|
Butterfly Showcase=Expositor de mariposas
|
||||||
Buy=Comprar
|
Buy=Comprar
|
||||||
|
@ -165,12 +166,14 @@ Prince Crown=Corona de príncipe
|
||||||
Prince of North Coat=Casaca del Príncipe del Norte
|
Prince of North Coat=Casaca del Príncipe del Norte
|
||||||
Queen Ant=Hormiga reina
|
Queen Ant=Hormiga reina
|
||||||
Queen Bee=Abeja reina
|
Queen Bee=Abeja reina
|
||||||
|
Rabbit Hide=Pellejo de conejo
|
||||||
Rat=Rata
|
Rat=Rata
|
||||||
Raw Chicken=Pollo crudo
|
Raw Chicken=Pollo crudo
|
||||||
Raw Ducky=Pato crudo
|
Raw Ducky=Pato crudo
|
||||||
Raw Goat=Cabrito crudo
|
Raw Goat=Cabrito crudo
|
||||||
Raw Parrot=Loro crudo
|
Raw Parrot=Loro crudo
|
||||||
Raw Porkchop=Chuleta de cerdo cruda
|
Raw Porkchop=Chuleta de cerdo cruda
|
||||||
|
Raw Rabbit=Conejo crudo
|
||||||
Roasted Chicken=Pollo asado
|
Roasted Chicken=Pollo asado
|
||||||
Roasted Chicken Legs=Muslitos de pollo asados
|
Roasted Chicken Legs=Muslitos de pollo asados
|
||||||
Roasted Ducky=Pato asado
|
Roasted Ducky=Pato asado
|
||||||
|
@ -179,6 +182,7 @@ Roasted Goat Meat=Carne de cabrito asada
|
||||||
Roasted Lamb Chop=Chuletilla de cordero asada
|
Roasted Lamb Chop=Chuletilla de cordero asada
|
||||||
Roasted Parrot=Loro tostado
|
Roasted Parrot=Loro tostado
|
||||||
Roasted Porkchop=Chuleta de cerdo asada
|
Roasted Porkchop=Chuleta de cerdo asada
|
||||||
|
Roasted Rabbit=Conejo asado
|
||||||
Rooster=Gallo
|
Rooster=Gallo
|
||||||
Saddle=Silla de montar
|
Saddle=Silla de montar
|
||||||
Saddlebag=Alforjas
|
Saddlebag=Alforjas
|
||||||
|
|
|
@ -34,6 +34,7 @@ Blueberry Muffin=Madeleine aux myrtilles
|
||||||
Brushed=Brossé
|
Brushed=Brossé
|
||||||
Bone=Os
|
Bone=Os
|
||||||
Bottle with Moth=Bouteille de papillon nocturne
|
Bottle with Moth=Bouteille de papillon nocturne
|
||||||
|
Bunny=Lapin
|
||||||
Butterfly=Papillon
|
Butterfly=Papillon
|
||||||
Butterfly Showcase=Vitrine des papillons
|
Butterfly Showcase=Vitrine des papillons
|
||||||
Buy=Acheter
|
Buy=Acheter
|
||||||
|
@ -165,12 +166,14 @@ Prince Crown=Couronne de Prince.
|
||||||
Prince of North Coat=Prince de la côte nord
|
Prince of North Coat=Prince de la côte nord
|
||||||
Queen Ant=Fourmi reine
|
Queen Ant=Fourmi reine
|
||||||
Queen Bee=Abeille reine
|
Queen Bee=Abeille reine
|
||||||
|
Rabbit Hide=Peau de lapin
|
||||||
Rat=Rat
|
Rat=Rat
|
||||||
Raw Chicken=Poulet cru
|
Raw Chicken=Poulet cru
|
||||||
Raw Ducky=Canard cru
|
Raw Ducky=Canard cru
|
||||||
Raw Parrot=Perroquet cru
|
Raw Parrot=Perroquet cru
|
||||||
Raw Goat=Chèvre crue
|
Raw Goat=Chèvre crue
|
||||||
Raw Porkchop=Porc cru
|
Raw Porkchop=Porc cru
|
||||||
|
Raw Rabbit=Lapin cru
|
||||||
Roasted Chicken=Poulet rôti
|
Roasted Chicken=Poulet rôti
|
||||||
Roasted Chicken Legs=Cuisses de poulet rôties
|
Roasted Chicken Legs=Cuisses de poulet rôties
|
||||||
Roasted Ducky=Canard rôti
|
Roasted Ducky=Canard rôti
|
||||||
|
@ -179,6 +182,7 @@ Roasted Goat Meat=Viande de chèvre rôtie
|
||||||
Roasted Lamb Chop=Mouton rôti
|
Roasted Lamb Chop=Mouton rôti
|
||||||
Roasted Parrot=Perroquet rôti
|
Roasted Parrot=Perroquet rôti
|
||||||
Roasted Porkchop=Rôti de porc
|
Roasted Porkchop=Rôti de porc
|
||||||
|
Roasted Rabbit=Rôti de lapin
|
||||||
Rooster=Coq
|
Rooster=Coq
|
||||||
Saddle=Selle
|
Saddle=Selle
|
||||||
Saddlebag=Sac pour selle
|
Saddlebag=Sac pour selle
|
||||||
|
|
|
@ -34,6 +34,7 @@ Blueberry Muffin=Кекс с черникой
|
||||||
Bone= Кость
|
Bone= Кость
|
||||||
Bottle with Moth=Бутылка с мотылем
|
Bottle with Moth=Бутылка с мотылем
|
||||||
Brushed=Почищенный
|
Brushed=Почищенный
|
||||||
|
Bunny=Зайка
|
||||||
Butterfly= бабочка
|
Butterfly= бабочка
|
||||||
Butterfly Showcase=Витрина бабочки
|
Butterfly Showcase=Витрина бабочки
|
||||||
Buy=Купить
|
Buy=Купить
|
||||||
|
@ -165,6 +166,7 @@ Prince Crown=Королевская корона
|
||||||
Prince of North Coat=Принц Северного плаща
|
Prince of North Coat=Принц Северного плаща
|
||||||
Queen Ant=Королева муравей
|
Queen Ant=Королева муравей
|
||||||
Queen Bee=Королева пчел
|
Queen Bee=Королева пчел
|
||||||
|
Rabbit Hide=Кроличья шкура
|
||||||
Rat=Крыса
|
Rat=Крыса
|
||||||
Raw Chicken=Сырая курица
|
Raw Chicken=Сырая курица
|
||||||
Raw Ducky=Сырая Утка
|
Raw Ducky=Сырая Утка
|
||||||
|
@ -172,6 +174,7 @@ Raw Parrot=Сырой попугай
|
||||||
Raw Goat=Сырой козёл
|
Raw Goat=Сырой козёл
|
||||||
Raw Porkchop=Сырая свиная отбивная
|
Raw Porkchop=Сырая свиная отбивная
|
||||||
Roasted Chicken=Жареная курица
|
Roasted Chicken=Жареная курица
|
||||||
|
Raw Rabbit=Сырой кролик
|
||||||
Roasted Chicken Legs=Жареные куриные ножки
|
Roasted Chicken Legs=Жареные куриные ножки
|
||||||
Roasted Ducky=Обжаренная утка
|
Roasted Ducky=Обжаренная утка
|
||||||
Roasted Frog Leg=Жареная лягушачья лапка
|
Roasted Frog Leg=Жареная лягушачья лапка
|
||||||
|
@ -179,6 +182,7 @@ Roasted Lamb Chop=Жареные отбивные из ягненка
|
||||||
Roasted Goat Meat=Жареное козье мясо
|
Roasted Goat Meat=Жареное козье мясо
|
||||||
Roasted Parrot=Жареный попугай
|
Roasted Parrot=Жареный попугай
|
||||||
Roasted Porkchop=Жареная свиная отбивная
|
Roasted Porkchop=Жареная свиная отбивная
|
||||||
|
Roasted Rabbit=Жареный кролик
|
||||||
Rooster=Рустер
|
Rooster=Рустер
|
||||||
Saddle=Седло
|
Saddle=Седло
|
||||||
Saddlebag=Мешок
|
Saddlebag=Мешок
|
||||||
|
|
|
@ -365,3 +365,26 @@ minetest.register_craft({
|
||||||
recipe = "petz:raw_goat",
|
recipe = "petz:raw_goat",
|
||||||
cooktime = 3,
|
cooktime = 3,
|
||||||
})
|
})
|
||||||
|
|
||||||
|
--Rabbit Food
|
||||||
|
minetest.register_craftitem("petz:raw_rabbit", {
|
||||||
|
description = S("Raw Rabbit"),
|
||||||
|
inventory_image = "petz_raw_rabbit.png",
|
||||||
|
wield_image = "petz_raw_rabbit.png",
|
||||||
|
on_use = minetest.item_eat(1),
|
||||||
|
groups = {flammable = 2, food = 2, food_meat_raw = 1},
|
||||||
|
})
|
||||||
|
|
||||||
|
minetest.register_craftitem("petz:roasted_rabbit", {
|
||||||
|
description = S("Roasted Rabbit"),
|
||||||
|
inventory_image = "petz_roasted_rabbit.png",
|
||||||
|
on_use = minetest.item_eat(3),
|
||||||
|
groups = {flammable = 2, food = 2, food_meat = 1},
|
||||||
|
})
|
||||||
|
|
||||||
|
minetest.register_craft({
|
||||||
|
type = "cooking",
|
||||||
|
output = "petz:roasted_rabbit",
|
||||||
|
recipe = "petz:raw_rabbit",
|
||||||
|
cooktime = 2,
|
||||||
|
})
|
||||||
|
|
|
@ -586,6 +586,14 @@ minetest.register_craftitem("petz:ant_leg", {
|
||||||
inventory_image = "petz_ant_leg.png",
|
inventory_image = "petz_ant_leg.png",
|
||||||
})
|
})
|
||||||
|
|
||||||
|
--Rabbit Hide
|
||||||
|
|
||||||
|
minetest.register_craftitem("petz:rabbit_hide", {
|
||||||
|
description = S("Rabbit Hide"),
|
||||||
|
inventory_image = "petz_rabbit_hide.png",
|
||||||
|
wield_image = "petz_rabbit_hide.png"
|
||||||
|
})
|
||||||
|
|
||||||
--minetest.register_node("petz:squirrel_cage", {
|
--minetest.register_node("petz:squirrel_cage", {
|
||||||
--description = S("Squirrel Cage"),
|
--description = S("Squirrel Cage"),
|
||||||
--drawtype = "glasslike_framed",
|
--drawtype = "glasslike_framed",
|
||||||
|
|
|
@ -0,0 +1,23 @@
|
||||||
|
function mobkit.hq_terrestial_jump(self, prty)
|
||||||
|
local func = function()
|
||||||
|
local velocity = {
|
||||||
|
x = self.max_speed * (self.jump_impulse/3),
|
||||||
|
y = self.max_speed * self.jump_impulse,
|
||||||
|
z = self.max_speed * (self.jump_impulse/3),
|
||||||
|
}
|
||||||
|
petz.set_velocity(self, velocity)
|
||||||
|
mobkit.animate(self, 'jump')
|
||||||
|
self.object:set_acceleration({x=1.0, y=self.jump_impulse, z=1.0})
|
||||||
|
self.status = "jump"
|
||||||
|
mobkit.animate(self, 'fly')
|
||||||
|
--mokapi.make_sound("object", self.object, "petz_splash", petz.settings.max_hear_distance)
|
||||||
|
minetest.after(0.5, function()
|
||||||
|
if mobkit.is_alive(self.object) then
|
||||||
|
self.status = nil
|
||||||
|
mobkit.clear_queue_high(self)
|
||||||
|
end
|
||||||
|
end, self, velocity)
|
||||||
|
return true
|
||||||
|
end
|
||||||
|
mobkit.queue_high(self, func, prty)
|
||||||
|
end
|
|
@ -119,6 +119,17 @@ function petz.herbivore_brain(self)
|
||||||
--end
|
--end
|
||||||
--end
|
--end
|
||||||
|
|
||||||
|
if prty < 8 then
|
||||||
|
if (self.can_jump) and not(self.status== "jump") then
|
||||||
|
local random_number = math.random(1, self.jump_ratio)
|
||||||
|
if random_number == 1 then
|
||||||
|
--minetest.chat_send_player("singleplayer", "jump")
|
||||||
|
mobkit.clear_queue_high(self)
|
||||||
|
mobkit.hq_terrestial_jump(self, 8)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
--Poop
|
--Poop
|
||||||
if prty < 7 then
|
if prty < 7 then
|
||||||
petz.poop(self, pos)
|
petz.poop(self, pos)
|
||||||
|
|
|
@ -9,6 +9,7 @@ assert(loadfile(modpath .. "/mobkit/bh_breed.lua"))()
|
||||||
assert(loadfile(modpath .. "/mobkit/bh_fly.lua"))()
|
assert(loadfile(modpath .. "/mobkit/bh_fly.lua"))()
|
||||||
assert(loadfile(modpath .. "/mobkit/bh_follow.lua"))()
|
assert(loadfile(modpath .. "/mobkit/bh_follow.lua"))()
|
||||||
assert(loadfile(modpath .. "/mobkit/bh_herding.lua"))()
|
assert(loadfile(modpath .. "/mobkit/bh_herding.lua"))()
|
||||||
|
assert(loadfile(modpath .. "/mobkit/bh_herbivore.lua"))()
|
||||||
assert(loadfile(modpath .. "/mobkit/bh_hunt.lua"))()
|
assert(loadfile(modpath .. "/mobkit/bh_hunt.lua"))()
|
||||||
assert(loadfile(modpath .. "/mobkit/bh_mount.lua"))()
|
assert(loadfile(modpath .. "/mobkit/bh_mount.lua"))()
|
||||||
assert(loadfile(modpath .. "/mobkit/bh_replace.lua"))()
|
assert(loadfile(modpath .. "/mobkit/bh_replace.lua"))()
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
# WARNING: Do NOT change the Petz Mod preferences here
|
# WARNING: Do NOT change the Petz Mod preferences here
|
||||||
# Do create a 'user.conf' with your favourite preferences instead of.
|
# Do create a 'user.conf' with your favourite preferences instead of.
|
||||||
|
|
||||||
petz_list = kitty,puppy,ducky,lamb,lion,calf,panda,grizzly,pony,parrot,chicken,piggy,wolf,elephant,elephant_female,pigeon,moth,camel,clownfish,bat,silkworm,chimp,hamster,dolphin,tropicalfish,beaver,turtle,frog,toucan,bee,queen_bee,mr_pumpkin,foxy,penguin,polar_bear,santa_killer,werewolf,tarantula,butterfly,rat,goat,squirrel,leopard,snow_leopard,ant,warrior_ant,queen_ant,rooster,hen
|
petz_list = kitty,puppy,ducky,lamb,lion,calf,panda,grizzly,pony,parrot,chicken,piggy,wolf,elephant,elephant_female,pigeon,moth,camel,clownfish,bat,silkworm,chimp,hamster,dolphin,tropicalfish,beaver,turtle,frog,toucan,bee,queen_bee,mr_pumpkin,foxy,penguin,polar_bear,santa_killer,werewolf,tarantula,butterfly,rat,goat,squirrel,leopard,snow_leopard,ant,warrior_ant,queen_ant,rooster,hen,bunny
|
||||||
|
|
||||||
##Tamagochi Mode (Take care of your pet: fed it...)
|
##Tamagochi Mode (Take care of your pet: fed it...)
|
||||||
tamagochi_mode = true
|
tamagochi_mode = true
|
||||||
|
@ -516,3 +516,13 @@ queen_ant_spawn_chance = 0.4
|
||||||
queen_ant_spawn_nodes = default:dirt_with_grass,default:desert_sand
|
queen_ant_spawn_nodes = default:dirt_with_grass,default:desert_sand
|
||||||
queen_ant_preys = petz:queen_ant
|
queen_ant_preys = petz:queen_ant
|
||||||
queen_ant_spawn_biome = default
|
queen_ant_spawn_biome = default
|
||||||
|
|
||||||
|
##Bunny Specific
|
||||||
|
bunny_follow = farming:wheat
|
||||||
|
bunny_spawn_chance = 0.6
|
||||||
|
bunny_spawn_nodes = default:dirt_with_grass
|
||||||
|
bunny_predators = petz:foxy
|
||||||
|
bunny_spawn_biome = default
|
||||||
|
bunny_spawn_herd = 3
|
||||||
|
bunny_breed = default:blueberries
|
||||||
|
bunny_copulation_distance = 2
|
||||||
|
|
|
@ -0,0 +1,112 @@
|
||||||
|
--
|
||||||
|
--BUNNY
|
||||||
|
--
|
||||||
|
local S = ...
|
||||||
|
|
||||||
|
local pet_name = "bunny"
|
||||||
|
local scale_model = 1.3
|
||||||
|
local scale_baby = 0.5
|
||||||
|
local visual_size = {x=petz.settings.visual_size.x*scale_model, y=petz.settings.visual_size.y*scale_model}
|
||||||
|
local visual_size_baby = {x=petz.settings.visual_size.x*scale_model*scale_baby, y=petz.settings.visual_size.y*scale_model*scale_baby}
|
||||||
|
local mesh = 'petz_bunny.b3d'
|
||||||
|
local skin_colors = {"brown", "gray", "black", "white", "pink"}
|
||||||
|
local textures = {}
|
||||||
|
for n = 1, #skin_colors do
|
||||||
|
textures[n] = "petz_"..pet_name.."_"..skin_colors[n]..".png"
|
||||||
|
end
|
||||||
|
local p1 = {x= -0.25, y = -0.5, z = -0.125}
|
||||||
|
local p2 = {x= 0.25, y = -0.0625, z = 0.1875}
|
||||||
|
local collisionbox, collisionbox_baby = petz.get_collisionbox(p1, p2, scale_model, scale_baby)
|
||||||
|
|
||||||
|
minetest.register_entity("petz:"..pet_name, {
|
||||||
|
--Petz specifics
|
||||||
|
type = "bunny",
|
||||||
|
init_tamagochi_timer = true,
|
||||||
|
is_pet = true,
|
||||||
|
has_affinity = true,
|
||||||
|
is_wild = false,
|
||||||
|
give_orders = true,
|
||||||
|
can_be_brushed = true,
|
||||||
|
can_jump = true,
|
||||||
|
jump_ratio = 10,
|
||||||
|
jump_impulse = 1.2,
|
||||||
|
breed = true,
|
||||||
|
mutation = 1,
|
||||||
|
capture_item = "lasso",
|
||||||
|
follow = petz.settings.bunny_follow,
|
||||||
|
drops = {
|
||||||
|
{name = "petz:raw_rabbit", chance = 1, min = 1, max = 1,},
|
||||||
|
{name = "petz:rabbit_hide", chance = 3, min = 1, max = 1,},
|
||||||
|
{name = "petz:bone", chance = 5, min = 1, max = 1,},
|
||||||
|
},
|
||||||
|
sleep_at_night = true,
|
||||||
|
sleep_ratio = 0.3,
|
||||||
|
rotate = petz.settings.rotate,
|
||||||
|
physical = true,
|
||||||
|
stepheight = 0.1, --EVIL!
|
||||||
|
collide_with_objects = true,
|
||||||
|
collisionbox = collisionbox,
|
||||||
|
collisionbox_baby = collisionbox_baby,
|
||||||
|
visual = petz.settings.visual,
|
||||||
|
mesh = mesh,
|
||||||
|
textures = textures,
|
||||||
|
skin_colors = skin_colors,
|
||||||
|
visual_size = visual_size,
|
||||||
|
visual_size_baby = visual_size_baby,
|
||||||
|
static_save = true,
|
||||||
|
get_staticdata = mobkit.statfunc,
|
||||||
|
-- api props
|
||||||
|
springiness= 0,
|
||||||
|
buoyancy = 0.5, -- portion of hitbox submerged
|
||||||
|
max_speed = 4,
|
||||||
|
jump_height = 1.5,
|
||||||
|
view_range = 10,
|
||||||
|
lung_capacity = 10, -- seconds
|
||||||
|
max_hp = 8,
|
||||||
|
makes_footstep_sound = false,
|
||||||
|
|
||||||
|
--head = {
|
||||||
|
--position = vector.new(0, 0.0969, 0.1939),
|
||||||
|
--rotation_origin = vector.new(-90, -90, 0), --in degrees, normally values are -90, 0, 90
|
||||||
|
--},
|
||||||
|
|
||||||
|
attack={range=0.5, damage_groups={fleshy=3}},
|
||||||
|
animation = {
|
||||||
|
walk={range={x=1, y=12}, speed=25, loop=true},
|
||||||
|
run={range={x=13, y=25}, speed=25, loop=true},
|
||||||
|
stand={
|
||||||
|
{range={x=26, y=46}, speed=5, loop=true},
|
||||||
|
{range={x=47, y=59}, speed=5, loop=true},
|
||||||
|
{range={x=82, y=94}, speed=5, loop=true},
|
||||||
|
},
|
||||||
|
sit = {range={x=60, y=65}, speed=5, loop=false},
|
||||||
|
sleep = {range={x=94, y=113}, speed=10, loop=false},
|
||||||
|
jump = {range={x=114, y=117}, speed=5, loop=false},
|
||||||
|
},
|
||||||
|
sounds = {
|
||||||
|
misc = {"petz_bunny_squeak", "petz_bunny_squeak2", "petz_bunny_squeak3"},
|
||||||
|
moaning = "petz_bunny_moaning",
|
||||||
|
},
|
||||||
|
|
||||||
|
logic = petz.herbivore_brain,
|
||||||
|
|
||||||
|
on_activate = function(self, staticdata, dtime_s) --on_activate, required
|
||||||
|
mobkit.actfunc(self, staticdata, dtime_s)
|
||||||
|
petz.set_initial_properties(self, staticdata, dtime_s)
|
||||||
|
end,
|
||||||
|
|
||||||
|
on_punch = function(self, puncher, time_from_last_punch, tool_capabilities, dir)
|
||||||
|
petz.on_punch(self, puncher, time_from_last_punch, tool_capabilities, dir)
|
||||||
|
end,
|
||||||
|
|
||||||
|
on_rightclick = function(self, clicker)
|
||||||
|
petz.on_rightclick(self, clicker)
|
||||||
|
end,
|
||||||
|
|
||||||
|
on_step = function(self, dtime)
|
||||||
|
mobkit.stepfunc(self, dtime) -- required
|
||||||
|
petz.on_step(self, dtime)
|
||||||
|
end,
|
||||||
|
})
|
||||||
|
|
||||||
|
petz:register_egg("petz:bunny", S("Bunny"), "petz_spawnegg_bunny.png", true)
|
|
@ -33,6 +33,7 @@ minetest.register_entity("petz:"..pet_name, {
|
||||||
mesh = mesh,
|
mesh = mesh,
|
||||||
textures = textures,
|
textures = textures,
|
||||||
visual_size = {x=petz.settings.visual_size.x*scale_model, y=petz.settings.visual_size.y*scale_model},
|
visual_size = {x=petz.settings.visual_size.x*scale_model, y=petz.settings.visual_size.y*scale_model},
|
||||||
|
visual_size_baby = visual_size_baby,
|
||||||
static_save = true,
|
static_save = true,
|
||||||
get_staticdata = mobkit.statfunc,
|
get_staticdata = mobkit.statfunc,
|
||||||
-- api props
|
-- api props
|
||||||
|
|
|
@ -57,7 +57,7 @@ minetest.register_entity("petz:"..pet_name, {
|
||||||
stand={
|
stand={
|
||||||
{range={x=26, y=46}, speed=5, loop=true},
|
{range={x=26, y=46}, speed=5, loop=true},
|
||||||
{range={x=47, y=59}, speed=5, loop=true},
|
{range={x=47, y=59}, speed=5, loop=true},
|
||||||
{range={x=81, y=94}, speed=5, loop=true},
|
{range={x=82, y=94}, speed=5, loop=true},
|
||||||
},
|
},
|
||||||
sit = {range={x=60, y=65}, speed=5, loop=false},
|
sit = {range={x=60, y=65}, speed=5, loop=false},
|
||||||
sleep = {range={x=94, y=113}, speed=10, loop=false},
|
sleep = {range={x=94, y=113}, speed=10, loop=false},
|
||||||
|
|
After Width: | Height: | Size: 6.3 KiB |
After Width: | Height: | Size: 6.8 KiB |
After Width: | Height: | Size: 6.4 KiB |
After Width: | Height: | Size: 6.5 KiB |
After Width: | Height: | Size: 1.4 KiB |
After Width: | Height: | Size: 6.5 KiB |
After Width: | Height: | Size: 1.9 KiB |
After Width: | Height: | Size: 1016 B |
After Width: | Height: | Size: 1.0 KiB |
After Width: | Height: | Size: 11 KiB |
After Width: | Height: | Size: 1.3 KiB |