master
runs 2019-11-10 22:12:48 +01:00
parent 8419788e9d
commit f1998e1851
29 changed files with 687 additions and 24 deletions

View File

@ -6,6 +6,10 @@ local modpath, S = ...
--to show the when on_rightclick form is shown
petz.pet = {} -- A table of pet["owner_name"]= entity_ref
minetest.register_on_leaveplayer(function(player)
petz.pet[player:get_player_name()] = nil
end)
--
--on_rightclick event for all the Mobs
--

View File

@ -35,6 +35,7 @@ assert(loadfile(modpath .. "/misc/brains.lua"))(modpath, S)
assert(loadfile(modpath .. "/misc/behaviours.lua"))(modpath, S)
assert(loadfile(modpath .. "/misc/nodes.lua"))(modpath, S) --Load the nodes
assert(loadfile(modpath .. "/misc/items.lua"))(modpath, S) --Load the items
--assert(loadfile(modpath .. "/misc/chests.lua"))(modpath, S) --Load the chests
assert(loadfile(modpath .. "/misc/food.lua"))(modpath, S) --Load the food items
assert(loadfile(modpath .. "/misc/spawn.lua"))(modpath, S) --Load the spawn engine
if minetest.get_modpath("3d_armor") ~= nil then --Armors (optional)

View File

@ -28,8 +28,10 @@ Chicken=Pollo
Chicken Legs=Muslitos de pollo
Chicken Legs Bucket=Cubo de muslitos de pollo
Chimp=Chimpance
Christmas Present=Regalo navideño
Close=Cerrar
Clownfish=Pez payaso
Compose a message=Componer una felicitación
Color=Color
Do your own thing=Anda a tu bola
Dolphin=Delfín
@ -88,6 +90,7 @@ No room in your inventory for the honey bottle.=No hay sitio en tu inventario pa
No honey in the behive.=No hay miel en la colmena.
Orders=Ordenes
Parrot=Loro
Penguin=Pinguino
Perch on shoulder=Pósate hombro
Pet Bowl=Bol de mascota
Pet Dreamcatcher=Cazador de Sueños de mascota
@ -95,6 +98,7 @@ Pigeon=Paloma
Piggy=Cerdito
Pollen=Polen
Pony=Poni
Polar Bear=Oso polar
Pregnant=Preñada
Pumpkin Hood=Capucha de calabaza
Puppy=Cachorrito
@ -164,6 +168,7 @@ Grey=Gris
Vanilla=Vainilla
Yellow=Pardo
White_dotted=A manchas blanco
Write=Escribir
Gray_dotted=A manchas gris
Black=Negro
Golden=Dorado

View File

@ -1,6 +1,6 @@
# textdomain: petz
@1 at full health (@2)=@1 at full health (@2)
Alight=Свет
@1 at full health (@2)=@1 при хорошем здоровье (@2)
Alight= Свет
A silk bobbin has been created!=Шелковая катушка была создана!
Bat=Летучая мышь
Beaver Fur=Бобровая шкурка
@ -18,7 +18,7 @@ Bird Stand=Подставка для птиц
Blueberry Cheese Cake=Черничный сырный пирог
Blueberry Ice Cream=Черничное мороженое
Blueberry Muffin=Кекс с черникой
Bone=Кость
Bone= Кость
Bottle with Moth=Бутылка с мотылем
Calf=Теленок
Cheese=Сыр
@ -28,10 +28,11 @@ Chicken=Цыплёнок
Chicken Legs=Куриные ножки
Chicken Legs Bucket=Ведро с курятиной
Chimp=Шимпанзе
Christmas Present=Christmas Present
Close=Закрыть
Clownfish=Рыба-клоун
Color=Цвет
Do your own thing=иди на бал.
Do your own thing=Отпустить погулять
Dolphin=Дельфин
Ducky Egg=Яйцо утки
Feather=Перо
@ -39,36 +40,36 @@ Ducky Nest with Egg=Утиное гнездо с яйцом
Ducky=Утка
Female=Самка
First, extract the silk bobbin from the spinning wheel.=Сначала извлеките шелковую катушку из вращающегося колеса.
Fish Tank=Рыбный бак
Fish Tank= Рыбный бак
Fly=Летаем
Follow me=Следуй за мной
Food=Еда
Foxy=Foxy
Foxy=Лисица
Fried Egg=Яичница
Fried and Egg=Яичница с беконом
Fried and Egg= Яичница с беконом
Frog Leg=Лягушачья лапка
Frog=Лягушка
Frog= Лягушка
Gender=Пол
Glass Syringe=Стеклянный шприц
Glass Syringe with seed=Стеклянный шприц с семенами
Guard=Сохранить
had already been brushed.=уже почистили.
had already been spreaded with beaver oil.=уже были смазаны бобровым жиром.
Hairbrush=Щётка для волос
Hairbrush= Щётка для волос
has abandoned you!!!=бросил тебя...!!!
has been captured=был пойман
has been tamed.=has been tamed.
has been tamed.=был приручен.
has starved to death!!!=Умер от голода!!!
Honey=Мед
Honey=Мёд
Honeycomb=Соты
Honey Bottle=Баночка меда
Honey Bottle=Баночка мёда
Hungry=Голоден
Infertile=Бесплодие
It breeds with=Он разводится с
It is pregnant=Беременна ли она?
It likes=Ему нравится...
Jack-o'-lantern=Jack-o'-lantern
Jack-o'-lantern Grenade=Jack-o'-lantern Grenade
It is pregnant=Скоро родит
It likes=Ему нравится...
Jack-o'-lantern=Фонарь из тыквы
Jack-o'-lantern Grenade=граната
Kitty=Котёнок
Lasso=Лассо
Lamb=Ягнёнок
@ -79,24 +80,26 @@ Mini Lamb Chop=Отбивная из ягненка
Milk Bucket=Ведро с молоком
more to create the bobbin.=больше для создания катушки.
Moth=Мотылёк.
Mr Pumpkin=Mr Pumpkin
Mr Pumpkin=Мистер Тыква
Name=Имя
Nest=Гнездо
No room in your inventory for the silk bobbin.=В вашем инвентаре нет места для шелковой катушки.
No room in your inventory for the egg.=В вашем инвентаре нет места для яйца.
No room in your inventory for the honey bottle.=В вашем инвентаре нет места для баночки меда.
No honey in the behive.=баночка меда закончилась.
No honey in the behive.=Мёда больше нет в улье!
Orders=Приказы
Parrot=Попугай
Penguin=Penguin
Perch on shoulder=Окунь на лопатке
Pet Bowl=Миска для питомца
Pet Dreamcatcher=Поймать питомца мечты
Pigeon=Голубь
Piggy=Свинья
Pollen=украденная
Pollen=Пыльца
Pony=Пони
Polar Bear=Polar Bear
Pregnant=Беременна
Pumpkin Hood=Pumpkin Hood
Pumpkin Hood=Тыквенный колпак
Puppy=Щенок
Prince Crown=Принц наследник
Queen Bee=Королева пчел
@ -113,10 +116,10 @@ Roasted Parrot=Жареный попугай
Roasted Porkchop=Жареная свиная отбивная
Saddle=Седло
Saddlebag=Мешок
Satiated=Насыщенный
Satiated=Накормлен
Set=Установка
Shears=Ножницы
Show tag=Показать бирку
Show tag=Отобразить кличку
Silk Bobbin=Шелковая катушка
Silk Boots=Шелковые сапоги
Silk Count=Количество шёлков
@ -144,7 +147,7 @@ Tropicalfish=Тропические рыбы
Turtle=Черепаха
Turtle Shell=Панцирь черепахи
Vanilla Wool=Ванильная шерсть
use to throw=use to throw
use to throw=для того чтобы бросить
Whip=Кнут
Worker Bee=Пчела-рабочий
Pet Whistle=Домашний свисток

209
petz/misc/chests.lua Normal file
View File

@ -0,0 +1,209 @@
local modpath, S = ...
petz.chest = {}
petz.chest.open_chests = {}
function petz.chest.get_chest_formspec(pos)
local spos = pos.x .. "," .. pos.y .. "," .. pos.z
local meta = minetest.get_meta(pos)
local christmas_msg = meta:get_string("christmas_msg")
if not(christmas_msg) then
christmas_msg = S("Merry Christmas")
end
local formspec =
"size[8,7]" ..
"image[3,0;1,1;petz_christmas_chest_inv.png]"..
"label[4,0;"..christmas_msg.."]"..
"list[nodemeta:" .. spos .. ";main;2,1.3;4,1;]" ..
"list[current_player;main;0,2.85;8,1;]" ..
"list[current_player;main;0,4.08;8,3;8]" ..
"listring[nodemeta:" .. spos .. ";main]" ..
"listring[current_player;main]" ..
default.get_hotbar_bg(0,2.85)
return formspec
end
function petz.chest.chest_lid_close(pn)
local chest_open_info = petz.chest.open_chests[pn]
local pos = chest_open_info.pos
local sound = chest_open_info.sound
local swap = chest_open_info.swap
petz.chest.open_chests[pn] = nil
for k, v in pairs(petz.chest.open_chests) do
if v.pos.x == pos.x and v.pos.y == pos.y and v.pos.z == pos.z then
return true
end
end
local node = minetest.get_node(pos)
minetest.after(0.2, minetest.swap_node, pos, { name = "petz:" .. swap,
param2 = node.param2 })
minetest.sound_play(sound, {gain = 0.3, pos = pos, max_hear_distance = 10})
end
minetest.register_on_leaveplayer(function(player)
local pn = player:get_player_name()
if petz.chest.open_chests[pn] then
petz.chest.chest_lid_close(pn)
end
end)
minetest.register_on_player_receive_fields(function(player, formname, fields)
if formname ~= "petz:chest" then
return
end
if not player or not fields.quit then
return
end
local pn = player:get_player_name()
if not petz.chest.open_chests[pn] then
return
end
petz.chest.chest_lid_close(pn)
return true
end)
petz.christmas_cards = {}
minetest.register_on_leaveplayer(function(player)
petz.christmas_cards[player:get_player_name()] = nil
end)
minetest.register_on_player_receive_fields(function(player, formname, fields)
if formname ~= "petz:present_msg" then
return
end
if not player or not fields.quit then
return
end
local pos = petz.christmas_cards[player:get_player_name()]
if pos and fields.christmas_msg then
local meta = minetest.get_meta(pos)
meta:set_string("christmas_message", christmas_msg)
end
return true
end)
function petz.register_chest(name, d)
local def = table.copy(d)
def.drawtype = "mesh"
def.visual = "mesh"
def.paramtype = "light"
def.paramtype2 = "facedir"
def.legacy_facedir_simple = true
def.is_ground_content = false
def.on_construct = function(pos)
local meta = minetest.get_meta(pos)
meta:set_string("infotext", d.description)
local inv = meta:get_inventory()
inv:set_size("main", 4*1)
end
def.after_place_node = function(pos, placer, itemstack, pointed_thing)
if placer:is_player() then
local player_name = placer:get_player_name()
local formspec =
"size[6,3.476]"..
"real_coordinates[true]"..
"field[0.375,1.25;5.25,0.8;christmas_msg;"..S("Compose a message")..":;]"..
"button_exit[1.5,2.3;3,0.8;write;"..S("Write").."]"
petz.christmas_cards[player_name] = pos
minetest.show_formspec(placer:get_player_name(), "petz:present_msg", formspec)
end
end
def.can_dig = function(pos,player)
local meta = minetest.get_meta(pos);
local inv = meta:get_inventory()
return inv:is_empty("main")
end
def.on_rightclick = function(pos, node, clicker)
minetest.sound_play(def.sound_open, {gain = 0.3, pos = pos,
max_hear_distance = 10})
if not default.chest.chest_lid_obstructed(pos) then
minetest.swap_node(pos, {
name = "petz:" .. name .. "_open",
param2 = node.param2 })
end
minetest.after(0.2, minetest.show_formspec,
clicker:get_player_name(),
"petz:chest", petz.chest.get_chest_formspec(pos))
petz.chest.open_chests[clicker:get_player_name()] = { pos = pos, sound = def.sound_close, swap = name }
end
def.on_blast = function(pos)
local drops = {}
default.get_inventory_drops(pos, "main", drops)
drops[#drops+1] = "petz:" .. name
minetest.remove_node(pos)
return drops
end
def.on_metadata_inventory_move = function(pos, from_list, from_index,
to_list, to_index, count, player)
minetest.log("action", player:get_player_name() ..
" moves stuff in chest at " .. minetest.pos_to_string(pos))
end
def.on_metadata_inventory_put = function(pos, listname, index, stack, player)
minetest.log("action", player:get_player_name() ..
" moves " .. stack:get_name() ..
" to chest at " .. minetest.pos_to_string(pos))
end
def.on_metadata_inventory_take = function(pos, listname, index, stack, player)
minetest.log("action", player:get_player_name() ..
" takes " .. stack:get_name() ..
" from chest at " .. minetest.pos_to_string(pos))
end
local def_opened = table.copy(def)
local def_closed = table.copy(def)
def_opened.mesh = "chest_open.obj"
for i = 1, #def_opened.tiles do
if type(def_opened.tiles[i]) == "string" then
def_opened.tiles[i] = {name = def_opened.tiles[i], backface_culling = true}
elseif def_opened.tiles[i].backface_culling == nil then
def_opened.tiles[i].backface_culling = true
end
end
def_opened.drop = "petz:" .. name
def_opened.groups.not_in_creative_inventory = 1
def_opened.selection_box = {
type = "fixed",
fixed = { -1/2, -1/2, -1/2, 1/2, 3/16, 1/2 },
}
def_opened.can_dig = function()
return false
end
def_opened.on_blast = function() end
def_closed.mesh = nil
def_closed.drawtype = nil
def_closed.tiles[6] = def.tiles[5] -- swap textures around for "normal"
def_closed.tiles[5] = def.tiles[3] -- drawtype to make them match the mesh
def_closed.tiles[3] = def.tiles[3].."^[transformFX"
minetest.register_node("petz:" .. name, def_closed)
minetest.register_node("petz:" .. name .. "_open", def_opened)
end
petz.register_chest("christmas_present", {
description = S("Christmas Present"),
tiles = {
"petz_christmas_chest_top.png",
"petz_christmas_chest_top.png",
"petz_christmas_chest_side.png",
"petz_christmas_chest_side.png",
"petz_christmas_chest_front.png",
"petz_christmas_chest_inside.png"
},
sounds = default.node_sound_wood_defaults(),
sound_open = "default_chest_open",
sound_close = "default_chest_close",
groups = {choppy = 2, oddly_breakable_by_hand = 2},
})

View File

@ -60,7 +60,7 @@ minetest.register_craftitem("petz:kennel", {
end
local pt_above = pointed_thing.above
local pt_under = pointed_thing.under
if not(minetest.is_protected(pt_above, user)) then
if not(minetest.is_protected(pt_above, user:get_player_name())) then
minetest.place_schematic(pt_above, modpath..'/schematics/kennel.mts', 0, nil, true)
itemstack:take_item()
return itemstack

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,441 @@
<?xml version="1.0" encoding="UTF-8"?><COLLADA xmlns="http://www.collada.org/2005/11/COLLADASchema" version="1.4.1">
<asset>
<contributor>
<author>VoxelShop User</author>
<authoring_tool>VoxelShop V1.8.26
</authoring_tool>
</contributor>
<created>2019-11-09T16:48:50</created>
<modified>2019-11-09T16:48:50</modified>
<unit meter="1" name="meter"/>
<up_axis>Z_UP</up_axis>
</asset>
<library_images>
<image id="petz_penguin_texture0-image" name="petz_penguin_texture0-image">
<init_from>file://petz_penguin_texture0.png</init_from>
</image>
</library_images>
<library_effects>
<effect id="lambert0-fx">
<profile_COMMON>
<newparam sid="petz_penguin_texture0-surface">
<surface type="2D">
<init_from>petz_penguin_texture0-image</init_from>
</surface>
</newparam>
<newparam sid="petz_penguin_texture0-sampler">
<sampler2D>
<source>petz_penguin_texture0-surface</source>
<wrap_s>WRAP</wrap_s>
<wrap_t>WRAP</wrap_t>
<minfilter>NEAREST</minfilter>
<magfilter>NEAREST</magfilter>
</sampler2D>
</newparam>
<technique sid="common">
<lambert>
<emission>
<color>0 0 0 1</color>
</emission>
<ambient>
<color>0 0 0 1</color>
</ambient>
<diffuse>
<texture texcoord="TEX0" texture="petz_penguin_texture0-sampler"/>
</diffuse>
</lambert>
</technique>
</profile_COMMON>
</effect>
</library_effects>
<library_materials>
<material id="lambert0-material" name="lambert0">
<instance_effect url="#lambert0-fx"/>
</material>
</library_materials>
<library_geometries>
<geometry id="Plane-tex-mesh-0" name="Plane-tex">
<mesh>
<source id="Plane-tex-mesh-0-positions">
<float_array count="24" id="Plane-tex-mesh-0-positions-array">-2 2 2 -2 4 0 -2 2 0 -2 4 2 0 2 2 0 4 0 0 2 0 0 4 2</float_array>
<technique_common>
<accessor count="8" source="#Plane-tex-mesh-0-positions-array" stride="3">
<param name="X" type="float"/>
<param name="Y" type="float"/>
<param name="Z" type="float"/>
</accessor>
</technique_common>
</source>
<source id="Plane-tex-mesh-0-uvs">
<float_array count="6" id="Plane-tex-mesh-0-uvs-array">0.1250884 0.9285209 0.24982323 0.9285209 0.1250884 0.8572439</float_array>
<technique_common>
<accessor count="3" source="#Plane-tex-mesh-0-uvs-array" stride="2">
<param name="S" type="float"/>
<param name="T" type="float"/>
</accessor>
</technique_common>
</source>
<vertices id="Plane-tex-mesh-0-vertices">
<input semantic="POSITION" source="#Plane-tex-mesh-0-positions"/>
</vertices>
<triangles count="12" material="Plane-tex-mesh-0-lambert0-material">
<input offset="0" semantic="VERTEX" source="#Plane-tex-mesh-0-vertices"/>
<input offset="1" semantic="TEXCOORD" set="0" source="#Plane-tex-mesh-0-uvs"/>
<p>0 0 1 1 2 2 0 0 3 1 1 2 5 1 4 0 6 2 7 1 4 0 5 2 1 1 6 0 2 2 5 1 6 0 1 2 4 0 3 1 0 2 4 0 7 1 3 2 6 0 0 1 2 2 6 0 4 1 0 2 3 1 5 0 1 2 7 1 5 0 3 2</p>
</triangles>
</mesh>
</geometry>
<geometry id="Plane-tex-mesh-1" name="Plane-tex">
<mesh>
<source id="Plane-tex-mesh-1-positions">
<float_array count="24" id="Plane-tex-mesh-1-positions-array">-4 -6 -12 -4 -4 -14 -4 -6 -14 -4 -4 -12 2 -6 -12 2 -4 -14 2 -6 -14 2 -4 -12</float_array>
<technique_common>
<accessor count="8" source="#Plane-tex-mesh-1-positions-array" stride="3">
<param name="X" type="float"/>
<param name="Y" type="float"/>
<param name="Z" type="float"/>
</accessor>
</technique_common>
</source>
<source id="Plane-tex-mesh-1-uvs">
<float_array count="6" id="Plane-tex-mesh-1-uvs-array">0.1250884 0.42852092 0.24982323 0.42852092 0.1250884 0.35724387</float_array>
<technique_common>
<accessor count="3" source="#Plane-tex-mesh-1-uvs-array" stride="2">
<param name="S" type="float"/>
<param name="T" type="float"/>
</accessor>
</technique_common>
</source>
<vertices id="Plane-tex-mesh-1-vertices">
<input semantic="POSITION" source="#Plane-tex-mesh-1-positions"/>
</vertices>
<triangles count="12" material="Plane-tex-mesh-1-lambert0-material">
<input offset="0" semantic="VERTEX" source="#Plane-tex-mesh-1-vertices"/>
<input offset="1" semantic="TEXCOORD" set="0" source="#Plane-tex-mesh-1-uvs"/>
<p>0 0 1 1 2 2 0 0 3 1 1 2 5 1 4 0 6 2 7 1 4 0 5 2 1 1 6 0 2 2 5 1 6 0 1 2 4 0 3 1 0 2 4 0 7 1 3 2 6 0 0 1 2 2 6 0 4 1 0 2 3 1 5 0 1 2 7 1 5 0 3 2</p>
</triangles>
</mesh>
</geometry>
<geometry id="Plane-tex-mesh-2" name="Plane-tex">
<mesh>
<source id="Plane-tex-mesh-2-positions">
<float_array count="24" id="Plane-tex-mesh-2-positions-array">-4 0 -14 -4 4 -16 -4 0 -16 -4 4 -14 -2 0 -14 -2 4 -16 -2 0 -16 -2 4 -14</float_array>
<technique_common>
<accessor count="8" source="#Plane-tex-mesh-2-positions-array" stride="3">
<param name="X" type="float"/>
<param name="Y" type="float"/>
<param name="Z" type="float"/>
</accessor>
</technique_common>
</source>
<source id="Plane-tex-mesh-2-uvs">
<float_array count="6" id="Plane-tex-mesh-2-uvs-array">0.1250884 0.9285209 0.24982323 0.9285209 0.1250884 0.8572439</float_array>
<technique_common>
<accessor count="3" source="#Plane-tex-mesh-2-uvs-array" stride="2">
<param name="S" type="float"/>
<param name="T" type="float"/>
</accessor>
</technique_common>
</source>
<vertices id="Plane-tex-mesh-2-vertices">
<input semantic="POSITION" source="#Plane-tex-mesh-2-positions"/>
</vertices>
<triangles count="12" material="Plane-tex-mesh-2-lambert0-material">
<input offset="0" semantic="VERTEX" source="#Plane-tex-mesh-2-vertices"/>
<input offset="1" semantic="TEXCOORD" set="0" source="#Plane-tex-mesh-2-uvs"/>
<p>0 0 1 1 2 2 0 0 3 1 1 2 5 1 4 0 6 2 7 1 4 0 5 2 1 1 6 0 2 2 5 1 6 0 1 2 4 0 3 1 0 2 4 0 7 1 3 2 6 0 0 1 2 2 6 0 4 1 0 2 3 1 5 0 1 2 7 1 5 0 3 2</p>
</triangles>
</mesh>
</geometry>
<geometry id="Plane-tex-mesh-3" name="Plane-tex">
<mesh>
<source id="Plane-tex-mesh-3-positions">
<float_array count="24" id="Plane-tex-mesh-3-positions-array">0 0 -14 0 4 -16 0 0 -16 0 4 -14 2 0 -14 2 4 -16 2 0 -16 2 4 -14</float_array>
<technique_common>
<accessor count="8" source="#Plane-tex-mesh-3-positions-array" stride="3">
<param name="X" type="float"/>
<param name="Y" type="float"/>
<param name="Z" type="float"/>
</accessor>
</technique_common>
</source>
<source id="Plane-tex-mesh-3-uvs">
<float_array count="6" id="Plane-tex-mesh-3-uvs-array">0.1250884 0.9285209 0.24982323 0.9285209 0.1250884 0.8572439</float_array>
<technique_common>
<accessor count="3" source="#Plane-tex-mesh-3-uvs-array" stride="2">
<param name="S" type="float"/>
<param name="T" type="float"/>
</accessor>
</technique_common>
</source>
<vertices id="Plane-tex-mesh-3-vertices">
<input semantic="POSITION" source="#Plane-tex-mesh-3-positions"/>
</vertices>
<triangles count="12" material="Plane-tex-mesh-3-lambert0-material">
<input offset="0" semantic="VERTEX" source="#Plane-tex-mesh-3-vertices"/>
<input offset="1" semantic="TEXCOORD" set="0" source="#Plane-tex-mesh-3-uvs"/>
<p>0 0 1 1 2 2 0 0 3 1 1 2 5 1 4 0 6 2 7 1 4 0 5 2 1 1 6 0 2 2 5 1 6 0 1 2 4 0 3 1 0 2 4 0 7 1 3 2 6 0 0 1 2 2 6 0 4 1 0 2 3 1 5 0 1 2 7 1 5 0 3 2</p>
</triangles>
</mesh>
</geometry>
<geometry id="Plane-tex-mesh-4" name="Plane-tex">
<mesh>
<source id="Plane-tex-mesh-4-positions">
<float_array count="24" id="Plane-tex-mesh-4-positions-array">-6 -4 -2 -6 2 -12 -6 -4 -12 -6 2 -2 -4 -4 -2 -4 2 -12 -4 -4 -12 -4 2 -2</float_array>
<technique_common>
<accessor count="8" source="#Plane-tex-mesh-4-positions-array" stride="3">
<param name="X" type="float"/>
<param name="Y" type="float"/>
<param name="Z" type="float"/>
</accessor>
</technique_common>
</source>
<source id="Plane-tex-mesh-4-uvs">
<float_array count="6" id="Plane-tex-mesh-4-uvs-array">0.1250884 0.42852092 0.24982323 0.42852092 0.1250884 0.35724387</float_array>
<technique_common>
<accessor count="3" source="#Plane-tex-mesh-4-uvs-array" stride="2">
<param name="S" type="float"/>
<param name="T" type="float"/>
</accessor>
</technique_common>
</source>
<vertices id="Plane-tex-mesh-4-vertices">
<input semantic="POSITION" source="#Plane-tex-mesh-4-positions"/>
</vertices>
<triangles count="12" material="Plane-tex-mesh-4-lambert0-material">
<input offset="0" semantic="VERTEX" source="#Plane-tex-mesh-4-vertices"/>
<input offset="1" semantic="TEXCOORD" set="0" source="#Plane-tex-mesh-4-uvs"/>
<p>0 0 1 1 2 2 0 0 3 1 1 2 5 1 4 0 6 2 7 1 4 0 5 2 1 1 6 0 2 2 5 1 6 0 1 2 4 0 3 1 0 2 4 0 7 1 3 2 6 0 0 1 2 2 6 0 4 1 0 2 3 1 5 0 1 2 7 1 5 0 3 2</p>
</triangles>
</mesh>
</geometry>
<geometry id="Plane-tex-mesh-5" name="Plane-tex">
<mesh>
<source id="Plane-tex-mesh-5-positions">
<float_array count="24" id="Plane-tex-mesh-5-positions-array">2 -4 -2 2 2 -12 2 -4 -12 2 2 -2 4 -4 -2 4 2 -12 4 -4 -12 4 2 -2</float_array>
<technique_common>
<accessor count="8" source="#Plane-tex-mesh-5-positions-array" stride="3">
<param name="X" type="float"/>
<param name="Y" type="float"/>
<param name="Z" type="float"/>
</accessor>
</technique_common>
</source>
<source id="Plane-tex-mesh-5-uvs">
<float_array count="6" id="Plane-tex-mesh-5-uvs-array">0.1250884 0.42852092 0.24982323 0.42852092 0.1250884 0.35724387</float_array>
<technique_common>
<accessor count="3" source="#Plane-tex-mesh-5-uvs-array" stride="2">
<param name="S" type="float"/>
<param name="T" type="float"/>
</accessor>
</technique_common>
</source>
<vertices id="Plane-tex-mesh-5-vertices">
<input semantic="POSITION" source="#Plane-tex-mesh-5-positions"/>
</vertices>
<triangles count="12" material="Plane-tex-mesh-5-lambert0-material">
<input offset="0" semantic="VERTEX" source="#Plane-tex-mesh-5-vertices"/>
<input offset="1" semantic="TEXCOORD" set="0" source="#Plane-tex-mesh-5-uvs"/>
<p>0 0 1 1 2 2 0 0 3 1 1 2 5 1 4 0 6 2 7 1 4 0 5 2 1 1 6 0 2 2 5 1 6 0 1 2 4 0 3 1 0 2 4 0 7 1 3 2 6 0 0 1 2 2 6 0 4 1 0 2 3 1 5 0 1 2 7 1 5 0 3 2</p>
</triangles>
</mesh>
</geometry>
<geometry id="Plane-tex-mesh-6" name="Plane-tex">
<mesh>
<source id="Plane-tex-mesh-6-positions">
<float_array count="24" id="Plane-tex-mesh-6-positions-array">-4 -4 6 -4 2 -2 -4 -4 -2 -4 2 6 2 -4 6 2 2 -2 2 -4 -2 2 2 6</float_array>
<technique_common>
<accessor count="8" source="#Plane-tex-mesh-6-positions-array" stride="3">
<param name="X" type="float"/>
<param name="Y" type="float"/>
<param name="Z" type="float"/>
</accessor>
</technique_common>
</source>
<source id="Plane-tex-mesh-6-uvs">
<float_array count="48" id="Plane-tex-mesh-6-uvs-array">0.3748339 0.4643391 0.20841637 0.5713218 0.20841637 0.4643391 0.37510896 0.3572129 0.37510896 0.46425068 0.8747821 0.46425068 0.12512256 0.3570806 0.31243873 0.3570806 0.31243873 0.07155308 0.3748232 0.46433622 0.1875884 0.57132757 0.1875884 0.46433622 0.499788 0.67853355 0.125106 0.67853355 0.125106 0.5715043 0.1250884 0.42852092 0.24982323 0.42852092 0.1250884 0.35724387 0.87489104 0.6427871 0.37521788 0.5357493 0.87489104 0.5357493 0.37508363 0.07153475 0.37508363 0.35708976 0.74983275 0.35708976</float_array>
<technique_common>
<accessor count="24" source="#Plane-tex-mesh-6-uvs-array" stride="2">
<param name="S" type="float"/>
<param name="T" type="float"/>
</accessor>
</technique_common>
</source>
<vertices id="Plane-tex-mesh-6-vertices">
<input semantic="POSITION" source="#Plane-tex-mesh-6-positions"/>
</vertices>
<triangles count="12" material="Plane-tex-mesh-6-lambert0-material">
<input offset="0" semantic="VERTEX" source="#Plane-tex-mesh-6-vertices"/>
<input offset="1" semantic="TEXCOORD" set="0" source="#Plane-tex-mesh-6-uvs"/>
<p>0 0 1 1 2 2 0 3 3 4 1 5 5 1 4 0 6 2 7 7 4 6 5 8 1 10 6 9 2 11 5 13 6 12 1 14 4 15 3 16 0 17 4 15 7 16 3 17 6 15 0 16 2 17 6 15 4 16 0 17 3 19 5 18 1 20 7 22 5 21 3 23</p>
</triangles>
</mesh>
</geometry>
<geometry id="Plane-tex-mesh-7" name="Plane-tex">
<mesh>
<source id="Plane-tex-mesh-7-positions">
<float_array count="24" id="Plane-tex-mesh-7-positions-array">-4 -4 -2 -4 2 -14 -4 -4 -14 -4 2 -2 2 -4 -2 2 2 -14 2 -4 -14 2 2 -2</float_array>
<technique_common>
<accessor count="8" source="#Plane-tex-mesh-7-positions-array" stride="3">
<param name="X" type="float"/>
<param name="Y" type="float"/>
<param name="Z" type="float"/>
</accessor>
</technique_common>
</source>
<source id="Plane-tex-mesh-7-uvs">
<float_array count="24" id="Plane-tex-mesh-7-uvs-array">0.5001661 0.7500534 0.624917 0.8570361 0.624917 0.7500534 0.500083 0.75010675 0.500083 0.85708946 0.6248339 0.85708946 0.1250884 0.42852092 0.24982323 0.42852092 0.1250884 0.35724387 0.5000884 0.9285209 0.6248232 0.9285209 0.5000884 0.8572439</float_array>
<technique_common>
<accessor count="12" source="#Plane-tex-mesh-7-uvs-array" stride="2">
<param name="S" type="float"/>
<param name="T" type="float"/>
</accessor>
</technique_common>
</source>
<vertices id="Plane-tex-mesh-7-vertices">
<input semantic="POSITION" source="#Plane-tex-mesh-7-positions"/>
</vertices>
<triangles count="12" material="Plane-tex-mesh-7-lambert0-material">
<input offset="0" semantic="VERTEX" source="#Plane-tex-mesh-7-vertices"/>
<input offset="1" semantic="TEXCOORD" set="0" source="#Plane-tex-mesh-7-uvs"/>
<p>0 0 1 1 2 2 0 3 3 4 1 5 5 1 4 0 6 2 7 4 4 3 5 5 1 1 6 0 2 2 5 4 6 3 1 5 4 0 3 1 0 2 4 3 7 4 3 5 6 6 0 7 2 8 6 6 4 7 0 8 3 10 5 9 1 11 7 10 5 9 3 11</p>
</triangles>
</mesh>
</geometry>
</library_geometries>
<library_visual_scenes>
<visual_scene id="Scene" name="Scene">
<node id="petz_penguin.layer" name="petz_penguin.Layer" type="NODE">
<translate sid="location">-0.0 -0.0 -0.0</translate>
<rotate sid="rotationZ">0 0 1 0</rotate>
<rotate sid="rotationY">0 1 0 0</rotate>
<rotate sid="rotationX">1 0 0 0</rotate>
<scale sid="scale">0.03125 0.03125 0.03125</scale>
<instance_geometry name="Layer" sid="petz_penguin.layer" url="#Plane-tex-mesh-0">
<bind_material>
<technique_common>
<instance_material symbol="lambert0-material" target="#lambert0-material">
<bind_vertex_input input_semantic="TEXCOORD" input_set="0" semantic="TEX0"/>
</instance_material>
</technique_common>
</bind_material>
</instance_geometry>
</node>
<node id="petz_penguin.layer.001" name="petz_penguin.Layer" type="NODE">
<translate sid="location">-0.0 -0.0 -0.0</translate>
<rotate sid="rotationZ">0 0 1 0</rotate>
<rotate sid="rotationY">0 1 0 0</rotate>
<rotate sid="rotationX">1 0 0 0</rotate>
<scale sid="scale">0.03125 0.03125 0.03125</scale>
<instance_geometry name="Layer" sid="petz_penguin.layer.001" url="#Plane-tex-mesh-1">
<bind_material>
<technique_common>
<instance_material symbol="lambert0-material" target="#lambert0-material">
<bind_vertex_input input_semantic="TEXCOORD" input_set="0" semantic="TEX0"/>
</instance_material>
</technique_common>
</bind_material>
</instance_geometry>
</node>
<node id="petz_penguin.layer.002" name="petz_penguin.Layer" type="NODE">
<translate sid="location">-0.0 -0.0 -0.0</translate>
<rotate sid="rotationZ">0 0 1 0</rotate>
<rotate sid="rotationY">0 1 0 0</rotate>
<rotate sid="rotationX">1 0 0 0</rotate>
<scale sid="scale">0.03125 0.03125 0.03125</scale>
<instance_geometry name="Layer" sid="petz_penguin.layer.002" url="#Plane-tex-mesh-2">
<bind_material>
<technique_common>
<instance_material symbol="lambert0-material" target="#lambert0-material">
<bind_vertex_input input_semantic="TEXCOORD" input_set="0" semantic="TEX0"/>
</instance_material>
</technique_common>
</bind_material>
</instance_geometry>
</node>
<node id="petz_penguin.layer.003" name="petz_penguin.Layer" type="NODE">
<translate sid="location">-0.0 -0.0 -0.0</translate>
<rotate sid="rotationZ">0 0 1 0</rotate>
<rotate sid="rotationY">0 1 0 0</rotate>
<rotate sid="rotationX">1 0 0 0</rotate>
<scale sid="scale">0.03125 0.03125 0.03125</scale>
<instance_geometry name="Layer" sid="petz_penguin.layer.003" url="#Plane-tex-mesh-3">
<bind_material>
<technique_common>
<instance_material symbol="lambert0-material" target="#lambert0-material">
<bind_vertex_input input_semantic="TEXCOORD" input_set="0" semantic="TEX0"/>
</instance_material>
</technique_common>
</bind_material>
</instance_geometry>
</node>
<node id="petz_penguin.layer.004" name="petz_penguin.Layer" type="NODE">
<translate sid="location">-0.0 -0.0 -0.0</translate>
<rotate sid="rotationZ">0 0 1 0</rotate>
<rotate sid="rotationY">0 1 0 0</rotate>
<rotate sid="rotationX">1 0 0 0</rotate>
<scale sid="scale">0.03125 0.03125 0.03125</scale>
<instance_geometry name="Layer" sid="petz_penguin.layer.004" url="#Plane-tex-mesh-4">
<bind_material>
<technique_common>
<instance_material symbol="lambert0-material" target="#lambert0-material">
<bind_vertex_input input_semantic="TEXCOORD" input_set="0" semantic="TEX0"/>
</instance_material>
</technique_common>
</bind_material>
</instance_geometry>
</node>
<node id="petz_penguin.layer.005" name="petz_penguin.Layer" type="NODE">
<translate sid="location">-0.0 -0.0 -0.0</translate>
<rotate sid="rotationZ">0 0 1 0</rotate>
<rotate sid="rotationY">0 1 0 0</rotate>
<rotate sid="rotationX">1 0 0 0</rotate>
<scale sid="scale">0.03125 0.03125 0.03125</scale>
<instance_geometry name="Layer" sid="petz_penguin.layer.005" url="#Plane-tex-mesh-5">
<bind_material>
<technique_common>
<instance_material symbol="lambert0-material" target="#lambert0-material">
<bind_vertex_input input_semantic="TEXCOORD" input_set="0" semantic="TEX0"/>
</instance_material>
</technique_common>
</bind_material>
</instance_geometry>
</node>
<node id="petz_penguin.layer.006" name="petz_penguin.Layer" type="NODE">
<translate sid="location">-0.0 -0.0 -0.0</translate>
<rotate sid="rotationZ">0 0 1 0</rotate>
<rotate sid="rotationY">0 1 0 0</rotate>
<rotate sid="rotationX">1 0 0 0</rotate>
<scale sid="scale">0.03125 0.03125 0.03125</scale>
<instance_geometry name="Layer" sid="petz_penguin.layer.006" url="#Plane-tex-mesh-6">
<bind_material>
<technique_common>
<instance_material symbol="lambert0-material" target="#lambert0-material">
<bind_vertex_input input_semantic="TEXCOORD" input_set="0" semantic="TEX0"/>
</instance_material>
</technique_common>
</bind_material>
</instance_geometry>
</node>
<node id="petz_penguin.layer.007" name="petz_penguin.Layer" type="NODE">
<translate sid="location">-0.0 -0.0 -0.0</translate>
<rotate sid="rotationZ">0 0 1 0</rotate>
<rotate sid="rotationY">0 1 0 0</rotate>
<rotate sid="rotationX">1 0 0 0</rotate>
<scale sid="scale">0.03125 0.03125 0.03125</scale>
<instance_geometry name="Layer" sid="petz_penguin.layer.007" url="#Plane-tex-mesh-7">
<bind_material>
<technique_common>
<instance_material symbol="lambert0-material" target="#lambert0-material">
<bind_vertex_input input_semantic="TEXCOORD" input_set="0" semantic="TEX0"/>
</instance_material>
</technique_common>
</bind_material>
</instance_geometry>
</node>
</visual_scene>
</library_visual_scenes>
<scene>
<instance_visual_scene url="#Scene"/>
</scene>
</COLLADA>

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 140 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 666 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 686 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 612 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 692 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 599 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 225 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 735 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 882 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 852 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 478 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB