0
0
mirror of https://github.com/marcrobledo/savegame-editors.git synced 2025-04-24 16:35:10 +00:00

Added breed selector.

This commit is contained in:
magiczocker10 2024-09-09 20:01:25 +02:00 committed by GitHub
parent 446a680de0
commit 94038488ed
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 383 additions and 39 deletions

View File

@ -0,0 +1,35 @@
// Row 1
1 Black & Tan (German Shepher Dog)
2 Sable (German Shepher Dog)
3 Black & Tan (Yorkshire Terrier)
4 Cream (Chihuahua)
5 Red & White (Chihuahua)
6 Tricolour (Chihuahua)
7 Blenheim (Cavalier King Charles Spaniel)
8 Tricolour (Cavalier King Charles Spaniel)
9 Ruby (Cavalier King Charles Spaniel)
10 Stable & White (Shetland Sheepdog)
// Row 2
1 Bicolour (Shetland Sheepdog)
2 Tricolour (Shetland Sheepdog)
3 Pointed (Longhaired Cat)
4 Bicolour (Longhaired Cat)
5 Pointed (Oriental Cat)
6 Smoke (Oriental Cat)
7 Solid (Standard Cat)
8 Tabby (Standard Cat)
9 Spotted Tabby (Standard Cat)
10 Calico (Standard Cat)
// Row 3
1 Tricolour (Basset Hound)
2 Lemon & White (Basset Hound)
3 With Spots (Dalmatian)
4 Black & White (Siberian Husky)
5 Brow & White (Siberian Husky)
6 Agouti & White (Siberian Husky)
7 Black & White (French Bulldog)
8 Brindle (French Bulldog)
9 Fawn (French Bulldog)
10

View File

@ -0,0 +1,75 @@
#menu[open] {
border: 0px solid gray;
border-radius: 5px;
box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
display: grid;
grid-template-areas:
'a b';
grid-template-columns: auto 1fr;
height: 100%;
padding: unset;
user-select: none;
width: max-content;
}
#menu-close {
position: absolute;
bottom: 0;
right: 0;
}
#menu-content {
grid-area: b;
height: 100%;
position: relative;
width: 100%;
}
#menu-content > div {
margin: 5px;
}
#menu-sidebar {
background: #e6e6e7;
font-family: 'Open Sans',sans-serif;
grid-area: a;
overflow-y: scroll;
padding-left: 5px;
padding-right: 5px;
scrollbar-width: none;
text-align: left;
white-space: nowrap;
}
#menu-sidebar div {
padding: 5px;
}
#menu-sidebar .header {
color: gray;
font-size:small;
font-weight: bold;
}
#menu-sidebar .header:not(:first-of-type) {
padding-top: 10px;
}
#menu-sidebar > div[class^="page-"] {
text-indent: 1em;
}
#menu-sidebar > div[class^="page-"]:hover {
background: #cececf;
border-radius: 5px;
cursor: pointer;
}
#menu-sidebar > div[open] {
background: #cececf;
border-radius: 5px;
}
.sprite {
background-repeat: no-repeat;
display: inline-block;
height: 64px;
margin: 5px;
vertical-align: text-top;
width: 64px;
}

115
nintendogs+cats/dialog.js Normal file
View File

@ -0,0 +1,115 @@
var spriteData = {
beagle: {path: './dogs/beagle.png', row: 6},
golden_retriever: {path: './dogs/golden_retriever.png', row: 6},
yorkshire_terrier: {path: './dogs/yorkshire_terrier.png', row: 6},
miniature_dachshund: {path: './dogs/miniature_dachshund.png', row: 5},
miniature_dachshund1: {path: './dogs/miniature_dachshund.png', row: 1},
chihuahua: {path: './dogs/chihuahua.png', row: 6},
chihuahua1: {path: './dogs/chihuahua.png', row: 2},
toy_poodle: {path: './dogs/toy_poodle.png', row: 5},
toy_poodle1: {path: './dogs/toy_poodle.png', row: 1},
shiba: {path: './dogs/shiba.png', row: 5},
labrador_retriever: {path: './dogs/labrador_retriever.png', row: 5},
labrador_retriever1: {path: './dogs/labrador_retriever.png', row: 1},
spaniel: {path: './dogs/spaniel.png', row: 5},
pug: {path: './dogs/pug.png', row: 5},
shih_tzu: {path: './dogs/shih_tzu.png', row: 5},
shetland_sheepdog: {path: './dogs/shetland_sheepdog.png', row: 6},
miniature_schnauzer: {path: './dogs/miniature_schnauzer.png', row: 5},
miniature_schnauzer1: {path: './dogs/miniature_schnauzer.png', row: 1},
pembroke_welsh_corgi: {path: './dogs/pembroke_welsh_corgi.png', row: 6},
miniature_pinscher: {path: './dogs/miniature_pinscher.png', row: 5},
german_shepherd_dog: {path: './dogs/german_shepherd_dog.png', row: 6},
jack_russell_terrier: {path: './dogs/jack_russell_terrier.png', row: 6},
siberian_husky: {path: './dogs/siberian_husky.png', row: 6},
boxer: {path: './dogs/boxer.png', row: 6},
dalmatian: {path: './dogs/dalmatian.png', row: 6},
pomeranian: {path: './dogs/pomeranian.png', row: 6},
pomeranian1: {path: './dogs/pomeranian.png', row: 1},
french_bulldog: {path: './dogs/french_bulldog.png', row: 5},
cocker_spaniel: {path: './dogs/cocker_spaniel.png', row: 5},
maltese: {path: './dogs/maltese.png', row: 6},
great_dane: {path: './dogs/great_dane.png', row: 6},
bull_terrier: {path: './dogs/bull_terrier.png', row: 6},
basset_hound: {path: './dogs/basset_hound.png', row: 6},
robo_pup: {path: './dogs/robo_pup.png', row: 5}
}
window.spriteData = spriteData;
var _writeU8 = function(variable, value) {
tempFile.writeU8(
SavegameEditor.Constants.PET_OFFSET[get('menu').dataset.pet]+SavegameEditor.Constants[variable],
Number(value)
);
};
window.addEventListener('load', function() {
'use strict';
const btnClose = document.getElementById('menu-close'),
menu = document.getElementById('menu'),
sidebar = document.getElementById('menu-sidebar'),
content = document.getElementById('menu-content');
var sidebar_event = function(e) {
if (!e.target.className.startsWith('page-')) {return;}
var old = sidebar.querySelector('div[open]');
if (old) {
old.removeAttribute('open');
content.querySelector('.' + old.className).style.display = 'none';
}
e.target.setAttribute('open', true);
var newContent = content.querySelector('.' + e.target.className);
if (!newContent) {
newContent = document.createElement('div');
newContent.className = e.target.className;
var offset = Number(e.target.getAttribute('image-offset'));
var sD = spriteData[e.target.getAttribute('breed')];
var offX = -4;
var offY = -4 - 68*Math.ceil(offset / sD.row);
var color = 0;
var style = 0;
for (var i = offset; i<offset+Number(e.target.getAttribute('image-items')); i++) {
var ele = document.createElement('div');
ele.style.backgroundImage = 'url(' + sD.path + ')';
ele.className = 'sprite';
ele.dataset.color = color;
ele.dataset.style = style;
ele.style.backgroundPosition = offX + 'px ' + offY + 'px';
newContent.appendChild(ele);
offX -= 68;
style++;
if (((i-offset) > 0 || sD.row === 1) && (i-offset) % sD.row == sD.row-1) {
offX = -4;
offY -= 68;
color++;
style=0;
}
}
newContent.style.width = 74 * sD.row;
content.appendChild(newContent);
} else {
newContent.style.removeProperty('display');
}
e.target.scrollIntoViewIfNeeded();
};
window._sidebar_event = sidebar_event;
sidebar.addEventListener('click', sidebar_event, false);
content.addEventListener('click', function(e) {
if (!e.target.className.includes('sprite')) {return;}
var tmp = e.target.parentElement.className.match(/\d+/g);
_writeU8('PET_BREED_OFFSET', tmp[0]);
_writeU8('PET_BREED_VARIANT_OFFSET', tmp[1]);
_writeU8('PET_BREED_COLOR_OFFSET', e.target.dataset.color);
_writeU8('PET_BREED_STYLE_OFFSET',e.target.dataset.style);
var newImage = e.target.cloneNode();
newImage.id = 'petimage' + (Number(get('menu').dataset.pet)+1);
document.getElementById(newImage.id).replaceWith(newImage);
btnClose.click();
}, false);
btnClose.addEventListener('click', function(e) {
e.preventDefault();
menu.close();
}, false);
sidebar_event({target: document.getElementsByClassName('page-0-0')[0]});
}, false);

View File

@ -8,8 +8,10 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"/>
<link rel="shortcut icon" href="favicon.png"/>
<link type="text/css" rel="stylesheet" href="../savegame-editor.css" media="all"/>
<link rel="stylesheet" href="./dialog.css">
<script type="text/javascript" src="../savegame-editor.js"></script>
<script type="text/javascript" src="./variants_dog.js"></script>
<script type="text/javascript" src="./dialog.js"></script>
<script type="text/javascript" src="./nintendogs+cats.js"></script>
<script type="text/javascript"><!--
/* service worker */
@ -31,13 +33,7 @@
<div class="columns c4"><input class="update-name" id="input-petX-name" type="text" class="fw" /></div>
<div class="columns c8">Gender</div><div class="update-name columns c4" id="container-petX-gender"></div>
<div class="columns c8">Breed</div><div class="update-name columns c4" id="container-petX-breed"></div>
<div class="columns c8">-Variant</div><div class="update-name columns c4" id="container-petX-breed-variant"></div>
<div class="columns c8"><label class="update-name" for="number-petX-breed-color">Breed Color</label></div>
<div class="columns c4"><input class="update-name" id="number-petX-breed-color" type="text" class="fw text-right" /></div>
<div class="columns c8"><label class="update-name" for="number-petX-breed-style">Breed Style</label></div>
<div class="columns c4"><input class="update-name" id="number-petX-breed-style" type="text" class="fw text-right" /></div>
<!-- Experimental
<div class="columns c8"><label for="number-pet1-hunger">Hunger Status</label></div>
<div class="columns c4"><input id="number-pet1-hunger" type="text" class="fw text-right" /></div>
@ -49,6 +45,127 @@
</div>
</div>
</template>
<dialog id="menu">
<div id="menu-sidebar">
<div class="header">Beagle</div>
<div breed='beagle' image-offset="0" image-items="30" class="page-0-0">Tricolour</div>
<div breed='beagle' image-offset="30" image-items="30" class="page-0-1">Lemon & White</div>
<div breed='beagle' image-offset="60" image-items="31" class="page-0-2">Surprise me!</div>
<div class="header">Golden Retriever</div>
<div breed="golden_retriever" image-offset="0" image-items="10" class="page-1-0">Golden</div>
<div breed="golden_retriever" image-offset="12" image-items="31" class="page-1-12">Surprise me!</div>
<div class="header">Yorkshire Terrier</div>
<div breed="yorkshire_terrier" image-offset="0" image-items="30" class="page-2-0">Black & Tan</div>
<div breed="yorkshire_terrier" image-offset="30" image-items="31" class="page-2-12">Surprise me!</div>
<div class="header">Miniature Dachshund</div>
<div breed="miniature_dachshund1" image-offset="0" image-items="5" class="page-3-0">Red</div>
<div breed="miniature_dachshund" image-offset="25" image-items="30" class="page-3-1">Black & Tan</div>
<div breed="miniature_dachshund" image-offset="55" image-items="31" class="page-3-12">Surprise me!</div>
<div class="header">Chihuahua</div>
<div breed="chihuahua" image-offset="0" image-items="30" class="page-4-0">Cream</div>
<div breed="chihuahua" image-offset="30" image-items="31" class="page-5-0">Red & White</div>
<div breed="chihuahua1" image-offset="21" image-items="10" class="page-5-1">Tricolour</div>
<div breed="chihuahua" image-offset="96" image-items="31" class="page-5-12">Surprise me!</div>
<div class="header">Toy Poodle</div>
<div breed='toy_poodle1' image-offset="0" image-items="6" class="page-6-0">Fluffy Muzzle</div>
<div breed='toy_poodle1' image-offset="6" image-items="5" class="page-7-0">Clipped Muzzle</div>
<div breed='toy_poodle' image-offset="55" image-items="31" class="page-7-12">Surprise me!</div>
<div class="header">Shiba</div>
<div breed='shiba' image-offset="0" image-items="30" class="page-8-0">Red & White</div>
<div breed='shiba' image-offset="30" image-items="30" class="page-8-1">Black & Tan</div>
<div breed='shiba' image-offset="60" image-items="61" class="page-8-12">Surprise me!</div>
<div class="header">Labrador Retriever</div>
<div breed='labrador_retriever1' image-offset="0" image-items="5" class="page-9-0">Yellow</div>
<div breed='labrador_retriever1' image-offset="5" image-items="6" class="page-9-1">Black</div>
<div breed='labrador_retriever1' image-offset="11" image-items="5" class="page-9-2">Chocolate</div>
<div breed='labrador_retriever' image-offset="80" image-items="31" class="page-9-12">Surprise me!</div>
<div class="header">Spaniel</div>
<div breed='spaniel' image-offset="0" image-items="30" class="page-10-0">Blentheim</div>
<div breed='spaniel' image-offset="0" image-items="30" class="page-10-1">Tricolour</div>
<div breed='spaniel' image-offset="0" image-items="30" class="page-10-2">Ruby</div>
<div breed='spaniel' image-offset="0" image-items="30" class="page-10-12">Surprise me!</div>
<div class="header">Pug</div>
<div breed='pug' image-offset="0" image-items="30" class="page-11-0">Silver</div>
<div breed='pug' image-offset="30" image-items="5" class="page-11-1">Black</div>
<div breed='pug' image-offset="35" image-items="30" class="page-11-2">Apricot</div>
<div breed='pug' image-offset="65" image-items="31" class="page-11-12">Surprise me!</div>
<div class="header">Shih Tzu</div>
<div breed='shih_tzu' image-offset="0" image-items="30" class="page-12-0">Brown & White</div>
<div breed='shih_tzu' image-offset="30" image-items="30" class="page-12-1">Brindle & White</div>
<div breed='shih_tzu' image-offset="60" image-items="31" class="page-12-12">Surprise me!</div>
<div class="header">Shetland Sheepdog</div>
<div breed='shetland_sheepdog' image-offset="0" image-items="30" class="page-13-0">Sable & White</div>
<div breed='shetland_sheepdog' image-offset="30" image-items="30" class="page-13-1">Bicolour</div>
<div breed='shetland_sheepdog' image-offset="60" image-items="30" class="page-13-2">Tricolour</div>
<div breed='shetland_sheepdog' image-offset="90" image-items="31" class="page-13-12">Surprise me!</div>
<div class="header">Miniature Schnauzer</div>
<div breed='miniature_schnauzer' image-offset="0" image-items="60" class="page-14-0">Pepper & Salt</div>
<div breed='miniature_schnauzer1' image-offset="12" image-items="11" class="page-14-12">Surprise me!</div>
<div class="header">Pembroke Welsh Corgi</div>
<div breed='pembroke_welsh_corgi' image-offset="0" image-items="30" class="page-15-0">Sable & White</div>
<div breed='pembroke_welsh_corgi' image-offset="30" image-items="30" class="page-15-1">Tricolour</div>
<div breed='pembroke_welsh_corgi' image-offset="60" image-items="31" class="page-15-12">Surprise me!</div>
<div class="header">Miniature Pinscher</div>
<div breed='miniature_pinscher' image-offset="0" image-items="30" class="page-16-0">Black & Tan</div>
<div breed='miniature_pinscher' image-offset="30" image-items="35" class="page-16-1">Red</div>
<div breed='miniature_pinscher' image-offset="65" image-items="31" class="page-16-12">Surprise me!</div>
<div class="header">German Shepherd Dog</div>
<div breed='german_shepherd_dog' image-offset="0" image-items="30" class="page-17-0">Black & Tan</div>
<div breed='german_shepherd_dog' image-offset="30" image-items="30" class="page-17-1">Sable</div>
<div breed='german_shepherd_dog' image-offset="60" image-items="36" class="page-17-12">Surprise me!</div>
<div class="header">Jack Russell Terrier</div>
<div breed='jack_russell_terrier' image-offset="0" image-items="30" class="page-18-0">Lemon & White</div>
<div breed='jack_russell_terrier' image-offset="30" image-items="30" class="page-18-1">Black & White</div>
<div breed='jack_russell_terrier' image-offset="60" image-items="31" class="page-18-12">Surprise me!</div>
<div class="header">Siberian Husky</div>
<div breed='siberian_husky' image-offset="0" image-items="30" class="page-19-0">Black & White</div>
<div breed='siberian_husky' image-offset="30" image-items="30" class="page-19-1">Brown / White</div>
<div breed='siberian_husky' image-offset="60" image-items="30" class="page-19-2">Agouti & White</div>
<div breed='siberian_husky' image-offset="90" image-items="31" class="page-19-12">Surprise me!</div>
<div class="header">Boxer</div>
<div breed='boxer' image-offset="0" image-items="30" class="page-20-0">Fawn & White</div>
<div breed='boxer' image-offset="30" image-items="60" class="page-20-1">Brindle & White</div>
<div breed='boxer' image-offset="90" image-items="31" class="page-20-12">Surprise me!</div>
<div class="header">Dalmatian</div>
<div breed='dalmatian' image-offset="0" image-items="60" class="page-21-0">With Spots</div>
<div breed='dalmatian' image-offset="60" image-items="31" class="page-21-12">Surprise me!</div>
<div class="header">Pomeranian</div>
<div breed='pomeranian1' image-offset="0" image-items="5" class="page-22-0">Orange</div>
<div breed='pomeranian' image-offset="30" image-items="30" class="page-22-1">Black & Tan</div>
<div breed='pomeranian' image-offset="60" image-items="30" class="page-22-2">Parti-Coloured</div>
<div breed='pomeranian' image-offset="90" image-items="31" class="page-22-12">Surprise me!</div>
<div class="header">French Bulldog</div>
<div breed='french_bulldog' image-offset="0" image-items="30" class="page-23-0">Black & White</div>
<div breed='french_bulldog' image-offset="30" image-items="30" class="page-23-1">Brindle</div>
<div breed='french_bulldog' image-offset="60" image-items="30" class="page-23-2">Fawn</div>
<div breed='french_bulldog' image-offset="90" image-items="36" class="page-23-12">Surprise me!</div>
<div class="header">Cocker Spaniel</div>
<div breed='cocker_spaniel' image-offset="0" image-items="60" class="page-24-0">Parti-Coloured</div>
<div breed='cocker_spaniel' image-offset="60" image-items="5" class="page-24-1">Red</div>
<div breed='cocker_spaniel' image-offset="65" image-items="31" class="page-24-12">Surprise me!</div>
<div class="header">Maltese</div>
<div breed='maltese' image-offset="0" image-items="31" class="page-25-12">White</div>
<div class="header">Great Dane</div>
<div breed='great_dane' image-offset="0" image-items="30" class="page-26-0">Mantle</div>
<div breed='great_dane' image-offset="30" image-items="30" class="page-26-1">Harlequin</div>
<div breed='great_dane' image-offset="60" image-items="30" class="page-26-2">Fawn</div>
<div breed='great_dane' image-offset="90" image-items="31" class="page-26-12">Surprise me!</div>
<div class="header">Bull Terrier</div>
<div breed='bull_terrier' image-offset="0" image-items="30" class="page-27-0">Black & White</div>
<div breed='bull_terrier' image-offset="30" image-items="30" class="page-27-1">Brindle & White</div>
<div breed='bull_terrier' image-offset="60" image-items="30" class="page-27-2">Red & White</div>
<div breed='bull_terrier' image-offset="90" image-items="31" class="page-27-12">Surprise me!</div>
<div class="header">Basset Hound</div>
<div breed='basset_hound' image-offset="0" image-items="30" class="page-28-0">Tricolour</div>
<div breed='basset_hound' image-offset="30" image-items="30" class="page-28-1">Lemon & White</div>
<div breed='basset_hound' image-offset="60" image-items="31" class="page-28-12">Surprise me!</div>
<div class="header">Robo Pup</div>
<div breed='robo_pup' image-offset="0" image-items="21" class="page-32-0">Untitled</div>
</div>
<div id="menu-content">
</div>
<button id="menu-close">OK</button>
</dialog>
<!-- HEADER -->
<div id="header">
<div id="header-top">

View File

@ -111,18 +111,6 @@ SavegameEditor={
_write_pet_coat:function(e){
SavegameEditor._write_u_number(e, 16, 'PET_COAT_OFFSET');
},
_write_pet_breed:function(e){
SavegameEditor._write_u_number(e, 8, 'PET_BREED_OFFSET');
},
_write_pet_breed_color:function(e){
SavegameEditor._write_u_number(e, 8, 'PET_BREED_COLOR_OFFSET');
},
_write_pet_breed_style:function(e){
SavegameEditor._write_u_number(e, 8, 'PET_BREED_STYLE_OFFSET');
},
_write_pet_breed_variant:function(e){
SavegameEditor._write_u_number(e, 8, 'PET_BREED_VARIANT_OFFSET');
},
/* check if savegame is valid */
checkValidSavegame:function(){
@ -137,6 +125,7 @@ SavegameEditor={
Math.floor(Date.now() * 0.001)
)
var a = new Date (Number(tempFile.readU32(SavegameEditor.Constants.LASTSAVED_OFFSET)) * 1000)
a.setHours(a.getHours() - a.getTimezoneOffset()/60);
setValue('lastsaved', a.toLocaleString("en-GB", {
day: "numeric",
month: "short",
@ -189,7 +178,6 @@ SavegameEditor={
setValue('money', tempFile.readU32(SavegameEditor.Constants.MONEY_OFFSET));
setNumericRange('money', 0, 9999999);
var a = new Date (Number(tempFile.readU32(SavegameEditor.Constants.LASTSAVED_OFFSET)) * 1000)
setValue('lastsaved', a.toLocaleString("en-GB", {
day: "numeric",
@ -197,7 +185,8 @@ SavegameEditor={
year: "numeric",
hour: "2-digit",
minute: "2-digit",
second: "2-digit"
second: "2-digit",
timezone: "Europe/London"
}));
var template = document.getElementById("template-row-pet");
var outer_ele = document.getElementById('row-pet-outer');
@ -218,27 +207,43 @@ SavegameEditor={
}
}
outer_ele.appendChild(templateClone);
var dialogClassName = 'page-' +
tempFile.readU8(SavegameEditor.Constants.PET_OFFSET[i-1]+SavegameEditor.Constants.PET_BREED_OFFSET) +
'-' +
tempFile.readU8(SavegameEditor.Constants.PET_OFFSET[i-1]+SavegameEditor.Constants.PET_BREED_VARIANT_OFFSET);
const dialogEle = document.getElementsByClassName(
dialogClassName
)[0];
window._sidebar_event({
target: dialogEle
});
var breedImg = document
.getElementById('menu-content')
.getElementsByClassName(dialogClassName)[0]
.querySelector('div[data-color="' + tempFile.readU8(SavegameEditor.Constants.PET_OFFSET[i-1]+SavegameEditor.Constants.PET_BREED_COLOR_OFFSET) + '"][data-style="' + tempFile.readU8(SavegameEditor.Constants.PET_OFFSET[i-1]+SavegameEditor.Constants.PET_BREED_STYLE_OFFSET) + '"]')
.cloneNode();
breedImg.id='petimage'+i;
get('container-pet' + i + '-breed').appendChild(breedImg);
var dialogbtn = document.createElement('button');
dialogbtn.dataset.pet = i - 1;
dialogbtn.onclick = function(e) {
e.preventDefault()
get('menu').dataset.pet = e.target.dataset.pet;
get('menu').showModal();
window._sidebar_event({
target: dialogEle
});
};
dialogbtn.innerText = 'Change';
get('container-pet' + i + '-breed').appendChild(dialogbtn);
get('container-pet' + i + '-breed').appendChild(select('pet' + i + '-breed', SavegameEditor.Constants.PET_BREEDS, SavegameEditor._write_pet_breed));
get('container-pet' + i + '-gender').appendChild(select('pet' + i + '-gender', SavegameEditor.Constants.GENDERS, SavegameEditor._write_pet_gender));
getField('select-pet' + i + '-gender').removeAttribute('disabled');
getField('select-pet' + i + '-breed').removeAttribute('disabled');
get('container-pet' + i + '-breed').addEventListener('change', function() {
var reset_dummy = {
target: {
id: 'select-pet'+i+'-breed-variant'
}
}
var cpbv = get('container-pet'+i+'-breed-variant')
cpbv.innerText = '';
cpbv.appendChild(select('pet'+i+'-breed-variant', window.variants.dog.breeds[SavegameEditor.Constants.PET_BREEDS[getField('pet1-breed').selectedIndex].variant], SavegameEditor._write_pet_breed_variant));
SavegameEditor._write_pet_breed_variant(reset_dummy);
});
setValue('pet' + i + '-name', tempFile.readU16String(SavegameEditor.Constants.PET_OFFSET[i-1]+SavegameEditor.Constants.PET_NAME_OFFSET, 10));
setValue('pet' + i + '-gender', tempFile.readU8(SavegameEditor.Constants.PET_OFFSET[i-1]+SavegameEditor.Constants.PET_GENDER_OFFSET));
setValue('pet' + i + '-breed', tempFile.readU8(SavegameEditor.Constants.PET_OFFSET[i-1]+SavegameEditor.Constants.PET_BREED_OFFSET));
get('input-pet' + i + '-name').addEventListener('change', SavegameEditor._write_pet_name);
// Experimental
@ -254,9 +259,6 @@ SavegameEditor={
get('number-pet' + i + '-coat').addEventListener('change', SavegameEditor._write_pet_coat);
*/
}
get('number-pet1-breed-color').addEventListener('change', SavegameEditor._write_pet_breed_color);
get('number-pet1-breed-style').addEventListener('change', SavegameEditor._write_pet_breed_style);
},
/* save function */