answer box now gets correctly generated
This commit is contained in:
@@ -16,10 +16,10 @@
|
|||||||
<p id="dlg-text"></p>
|
<p id="dlg-text"></p>
|
||||||
</div>
|
</div>
|
||||||
<div hidden="true" id="answer-box">
|
<div hidden="true" id="answer-box">
|
||||||
<p id="answer"></p>
|
<p class="answer"></p>
|
||||||
<p id="answer"></p>
|
<p class="answer"></p>
|
||||||
<p id="answer"></p>
|
<p class="answer"></p>
|
||||||
<p id="answer"></p>
|
<p class="answer"></p>
|
||||||
</div>
|
</div>
|
||||||
<img draggable="false" hidden="true" id="triangle" src="text_horror/assets/triangle.png">
|
<img draggable="false" hidden="true" id="triangle" src="text_horror/assets/triangle.png">
|
||||||
<p class="thx-for-playing">Thanks for playing</p>
|
<p class="thx-for-playing">Thanks for playing</p>
|
||||||
|
@@ -14,8 +14,8 @@ function load() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function typeWriter() {
|
function typeWriter() {
|
||||||
if (document.getElementById("dlg-text").innerHTML.length < dlgLines[dlgPointer].toString().length) {
|
if (document.getElementById("dlg-text").innerHTML.length < dlgLines[dlgPointer].length) {
|
||||||
document.getElementById("dlg-text").innerHTML += dlgLines[dlgPointer].toString().charAt(typeindex);
|
document.getElementById("dlg-text").innerHTML += dlgLines[dlgPointer].charAt(typeindex);
|
||||||
typeindex++;
|
typeindex++;
|
||||||
document.getElementById("triangle").hidden = document.getElementById("dlg-text").innerHTML.length != dlgLines[dlgPointer].length
|
document.getElementById("triangle").hidden = document.getElementById("dlg-text").innerHTML.length != dlgLines[dlgPointer].length
|
||||||
setTimeout(typeWriter, speed); //loops because of running "typeWriter" after waiting
|
setTimeout(typeWriter, speed); //loops because of running "typeWriter" after waiting
|
||||||
@@ -25,22 +25,32 @@ function typeWriter() {
|
|||||||
function nextDlg() {
|
function nextDlg() {
|
||||||
document.getElementById("triangle").hidden = true;
|
document.getElementById("triangle").hidden = true;
|
||||||
if (document.getElementById("dlg-text").innerHTML.length == dlgLines[dlgPointer].length) { //check if text is typed out
|
if (document.getElementById("dlg-text").innerHTML.length == dlgLines[dlgPointer].length) { //check if text is typed out
|
||||||
document.getElementById("triangle").hidden = true;
|
if (dlgPointer < dlgLines.length - 1) { //check if dlgPointer is not at the array end
|
||||||
if (dlgPointer < dlgLines.length - 2) { //check if dlgPointer is not at the array end
|
|
||||||
do {
|
do {
|
||||||
dlgPointer++;
|
|
||||||
if (typeof dlgLines[dlgPointer] === 'number')
|
if (typeof dlgLines[dlgPointer] === 'number')
|
||||||
speed = 50 / dlgLines[dlgPointer];
|
speed = 50 / dlgLines[dlgPointer];
|
||||||
else if (typeof dlgLines[dlgPointer] === 'object') { }
|
else if (typeof dlgLines[dlgPointer] === 'object') {
|
||||||
else if (typeof dlgLines[dlgPointer] === 'string' && String(dlgLines[dlgPointer]).startsWith("_")) {
|
document.getElementById("answer-box").hidden = false;
|
||||||
|
document.getElementById("bubble").onclick = null;
|
||||||
|
const answers = document.getElementsByClassName("answer");
|
||||||
|
const keys = Object.keys(dlgLines[dlgPointer]);
|
||||||
|
for (let j = 0; j < keys.length; j++) { //why is the length one smaller? Does javascript make any sense someday?
|
||||||
|
answers.item(j).innerHTML = keys[j];
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
else if (typeof dlgLines[dlgPointer] === 'string' && dlgLines[dlgPointer].startsWith("_")) {
|
||||||
if (dlgLines[dlgPointer].split(":")[0] === "_title")
|
if (dlgLines[dlgPointer].split(":")[0] === "_title")
|
||||||
document.getElementById("title").innerHTML = dlgLines[dlgPointer].split(':')[1];
|
document.getElementById("title").innerHTML = dlgLines[dlgPointer].split(':')[1];
|
||||||
}
|
}
|
||||||
|
dlgPointer++;
|
||||||
|
}
|
||||||
|
while (!(typeof dlgLines[dlgPointer] === 'string') || dlgLines[dlgPointer].startsWith("_")) //again if it's not string
|
||||||
|
if (typeof dlgLines[dlgPointer] === 'string') {
|
||||||
|
typeindex = 0;
|
||||||
|
document.getElementById("dlg-text").innerHTML = "";
|
||||||
|
typeWriter();
|
||||||
}
|
}
|
||||||
while (typeof dlgLines[dlgPointer] !== 'string' || String(dlgLines[dlgPointer]).startsWith("_")) //again if it's not string
|
|
||||||
typeindex = 0;
|
|
||||||
document.getElementById("dlg-text").innerHTML = "";
|
|
||||||
typeWriter();
|
|
||||||
} else {
|
} else {
|
||||||
document.getElementById("bubble").hidden = true;
|
document.getElementById("bubble").hidden = true;
|
||||||
document.getElementById("answer-box").hidden = true;
|
document.getElementById("answer-box").hidden = true;
|
||||||
|
@@ -3,14 +3,17 @@
|
|||||||
"Hello welcome to TextHorror!",
|
"Hello welcome to TextHorror!",
|
||||||
"_title:NPC Name",
|
"_title:NPC Name",
|
||||||
"This is the second line",
|
"This is the second line",
|
||||||
"Aand a third line",
|
|
||||||
0.3,
|
0.3,
|
||||||
"This text is slow",
|
"This text is slow",
|
||||||
1,
|
1,
|
||||||
"And again normal text",
|
"Can you answer?",
|
||||||
{
|
{
|
||||||
"Yes": "CoooooooolllSADVwqavedWSDV",
|
"Yes": [
|
||||||
"Also Yes": "MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMGGHWhudujwd"
|
"CoooooooolllSADVwqavedWSDV"
|
||||||
|
],
|
||||||
|
"Also Yes": [
|
||||||
|
"MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMGGHWhudujwd"
|
||||||
|
]
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
@@ -69,7 +69,7 @@ body {
|
|||||||
bottom: 68%;
|
bottom: 68%;
|
||||||
}
|
}
|
||||||
|
|
||||||
#answer {
|
.answer {
|
||||||
text-decoration: underline;
|
text-decoration: underline;
|
||||||
font-size: 30px;
|
font-size: 30px;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user