1
0
Fork 0
merge-requests/3/head
progr76@gmail.com 2019-04-25 13:16:39 +03:00
parent b4daa801db
commit ef84510bae
69 changed files with 10991 additions and 274 deletions

Binary file not shown.

Binary file not shown.

View File

@ -115,14 +115,12 @@ return:
}
```
example2 (создание нового счета):
example2 (create new account):
```js
http://127.0.0.1/api/v2/Send
{
"FromID": 190059,
"FromPrivKey": "A2D45610FE8AC931F32480BFE3E78D26E45B0A4F88045D6518263DA12FA9C033",
"ToID22":190516,
"ToID":"0240EDF5ECB25D886FD58DB92A53914FAC975078C1C2EDD1AC292B70C7BC13461F",
"Amount":10,
"Description":"New account",

View File

@ -123,7 +123,6 @@ http://127.0.0.1/api/v2/Send
{
"FromID": 190059,
"FromPrivKey": "A2D45610FE8AC931F32480BFE3E78D26E45B0A4F88045D6518263DA12FA9C033",
"ToID22":190516,
"ToID":"0240EDF5ECB25D886FD58DB92A53914FAC975078C1C2EDD1AC292B70C7BC13461F",
"Amount":10,
"Description":"New account",

View File

@ -1702,3 +1702,12 @@ function ToLog(Str)
{
console.log(Str);
};
function InitMainServer()
{
var Str = localStorage["MainServer"];
if(Str && !localStorage["BIGWALLET"] && Str.substr(0, 1) === "{")
{
MainServer = JSON.parse(Str);
}
};

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

View File

@ -29,10 +29,7 @@
window.onload=function()
{
if(localStorage["MainServer"] && !localStorage["BIGWALLET"])
{
MainServer=JSON.parse(localStorage["MainServer"]);
}
InitMainServer();
document.body.className="univers "+localStorage["idSelStyle"];
var i=document.URL.indexOf("#");

View File

@ -28,12 +28,27 @@
var CountViewRows=20;
function SetStatus(Str)
{
var id = $("idStatus");
id.innerHTML=Str;
}
window.onload=function()
{
if(localStorage["MainServer"] && !localStorage["BIGWALLET"])
try
{
MainServer=JSON.parse(localStorage["MainServer"]);
OnLoad();
}
catch (e)
{
SetStatus("Error: "+e);
}
}
function OnLoad()
{
InitMainServer();
document.body.className="univers "+localStorage["idSelStyle"];
var i=document.URL.indexOf("#");
@ -208,6 +223,9 @@
</DIV>
<DIV id="idStatus"></DIV>
<DIV id="idStableScroll">
@terafoundation
<!--progr76@gmail.com-->

View File

@ -1336,7 +1336,8 @@
<th id="CurrencyNameItem(Item)" data-name="Currency" class="cur hint">Cur</th>
<th id="Item.Name" data-name="Account name" class="accname hint">Name</th>
<th id="Item.Value.OperationID" data-name="Operation ID" class="snum hint">OP</th>
<th id="Item.Adviser" data-name="Adviser" class="snum hint">Adv</th>
<th id="(RetHistoryAccount(Item,'Adviser'))" data-name="Adviser" class="snum hint">Adv</th>
<th id="(RetChangeSmart(Item))" data-name="Smart contract (DApp)" class="smart hint">Smart</th>
<th id="Item.WN" class="num" style="width: 30px;"></th>
</tr>
@ -1620,7 +1621,7 @@
<th id="Item.Name" class="accname">Name</th>
<th id="Item.PubKeyStr" class="pubkey">PubKey</th>
<th id="Item.Value.OperationID" class="num">Operation</th>
<th id="Item.Adviser" class="num">Adviser</th>
<th id="(RetHistoryAccount(Item,'Adviser'))" class="num">Adviser</th>
<th id="Item.Value.Smart" class="num">Smart</th>
<th id="(RetOpenBlock(Item.BlockNumCreate,1))" class="num">Block Num</th>
<!--<th id="Item.Arr[0].BlockNum" class="num">0</th>-->
@ -1660,7 +1661,7 @@
<!--<th id="GetHexFromArr(Item.SumHash)" class="hash">SumHash</th>-->
<th id="Item.TrDataLen" class="num">Bytes</th>
<th id="Item.Power" class="num">Pow</th>
<th id="Item.Miner" class="num">Miner</th>
<th id="(RetHistoryAccount(Item,'Miner'))" class="num">Miner</th>
<!--<th id="GetHexFromArr(Item.Hash1)" class="hash">Hash1</th>-->

View File

@ -516,6 +516,17 @@
<script>
//SEND
setInterval(CheckSending,1000);
function OpenAddressBook()
{
return;
var bVisible=IsVisibleBlock("idAddressBook");
SetVisibleBlock("idAddressBook",!bVisible);
}
function CloaseAddressBook()
{
OpenAddressBook();
}
</script>
@ -876,6 +887,34 @@
left:0;
}
.abook
{
width: 26px;
height: 26px;
padding: 0 0 0 10px;
margin: 0 0 -10px;
cursor: pointer;
}
#idAddressBook
{
z-index:100;
position:absolute;
height:200px;
width:300px;
top:150px;
left:0;
transform: translateX(50vw) translateX(-320px);
background: #f1ffda;
color: black;
text-align: left;
border: 1px solid #782019;
border-radius: 5px;
box-shadow: 0 0 0 1px darkgrey;
}
</style>
</head>
@ -1001,7 +1040,7 @@
</tr>
<tr><td>&nbsp;</td><td><DIV id="idNameTo" class="smallbold"></DIV></td></tr>
<tr>
<td>Pay to</td>
<td>Pay to<img src="./PIC/address_book.png" onclick="OpenAddressBook()" class="abook"></td>
<td>
<INPUT style="float: left" type="string" id="idTo" value="" oninput="OnEditIdTo()" placeholder="Payee (required)" >
</td>
@ -1180,6 +1219,18 @@
</DIV>
</DIV>
<DIV id="idAddressBook" style="display: none">
<DIV align="center">
<H3>Address book</H3>
</DIV>
20 VTOOLS del<BR>
20 VTOOLS del<BR>
20 VTOOLS del<BR>
<!--<BR>-->
<!--<button class="radius" onclick="CloaseAddressBook()">Close</button>-->
</DIV>
<DIV id="idStableScroll" align='center'>
<A href="https://terafoundation.org/">Web</A>
<A href="https://bitcointalk.org/index.php?topic=4573801.0">ANN</A>

File diff suppressed because one or more lines are too long

9439
Source/SITE/JS/sign-lib.js Normal file

File diff suppressed because it is too large Load Diff

View File

@ -45,7 +45,7 @@
PrevEditContent[Name]=elem.innerHTML;
var Path=EditMap[Name];
if(Path)
GetDataWebEdit("/GetFileContent",{Path:Path,Password:GetPassword()},function (Data)
GetData("/GetFileContent",{Path:Path,Password:GetPassword()},function (Data)
{
//console.log("result="+JSON.stringify(Data));
elem.innerText=Data.Body;
@ -62,7 +62,7 @@
var elem2=ByID("Edit"+Name);
var Path=EditMap[Name];
if(Path)
GetDataWebEdit("/SaveFileContent",{Path:Path,Password:GetPassword(),Body:elem2.innerText},function (Data)
GetData("/SaveFileContent",{Path:Path,Password:GetPassword(),Body:elem2.innerText},function (Data)
{
if(Data.result)
//PrevEditContent[Name]=GetToolbarHTML(Name)+Data.Body;
@ -90,7 +90,7 @@
{
return document.getElementById(id);
}
function GetDataWebEdit(Method, ObjPost, Func)
function GetData(Method, ObjPost, Func)
{
//console.log(Method);
var serv=new XMLHttpRequest();

BIN
Source/SITE/PIC/Gennady.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 85 KiB

BIN
Source/SITE/PIC/Ken.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 63 KiB

BIN
Source/SITE/PIC/Ryuu.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

BIN
Source/SITE/PIC/corey.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

BIN
Source/SITE/PIC/groboro.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 73 KiB

BIN
Source/SITE/PIC/itutu.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 68 KiB

View File

@ -0,0 +1,14 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="510px" height="510px" viewBox="0 0 510 510" style="enable-background:new 0 0 510 510;" xml:space="preserve" fill="#fff">
<g>
<g id="post-linkedin">
<path d="M459,0H51C22.95,0,0,22.95,0,51v408c0,28.05,22.95,51,51,51h408c28.05,0,51-22.95,51-51V51C510,22.95,487.05,0,459,0z
M153,433.5H76.5V204H153V433.5z M114.75,160.65c-25.5,0-45.9-20.4-45.9-45.9s20.4-45.9,45.9-45.9s45.9,20.4,45.9,45.9
S140.25,160.65,114.75,160.65z M433.5,433.5H357V298.35c0-20.399-17.85-38.25-38.25-38.25s-38.25,17.851-38.25,38.25V433.5H204
V204h76.5v30.6c12.75-20.4,40.8-35.7,63.75-35.7c48.45,0,89.25,40.8,89.25,89.25V433.5z"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1001 B

View File

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- Generator: Adobe Illustrator 19.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 382 382" style="enable-background:new 0 0 382 382;" xml:space="preserve" width="30" height="30">
<path style="fill:#0077B7;" d="M347.445,0H34.555C15.471,0,0,15.471,0,34.555v312.889C0,366.529,15.471,382,34.555,382h312.889
C366.529,382,382,366.529,382,347.444V34.555C382,15.471,366.529,0,347.445,0z M118.207,329.844c0,5.554-4.502,10.056-10.056,10.056
H65.345c-5.554,0-10.056-4.502-10.056-10.056V150.403c0-5.554,4.502-10.056,10.056-10.056h42.806
c5.554,0,10.056,4.502,10.056,10.056V329.844z M86.748,123.432c-22.459,0-40.666-18.207-40.666-40.666S64.289,42.1,86.748,42.1
s40.666,18.207,40.666,40.666S109.208,123.432,86.748,123.432z M341.91,330.654c0,5.106-4.14,9.246-9.246,9.246H286.73
c-5.106,0-9.246-4.14-9.246-9.246v-84.168c0-12.556,3.683-55.021-32.813-55.021c-28.309,0-34.051,29.066-35.204,42.11v97.079
c0,5.106-4.139,9.246-9.246,9.246h-44.426c-5.106,0-9.246-4.14-9.246-9.246V149.593c0-5.106,4.14-9.246,9.246-9.246h44.426
c5.106,0,9.246,4.14,9.246,9.246v15.655c10.497-15.753,26.097-27.912,59.312-27.912c73.552,0,73.131,68.716,73.131,106.472
L341.91,330.654L341.91,330.654z"/>
<g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 62 KiB

BIN
Source/SITE/PIC/mxc.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.7 KiB

View File

@ -0,0 +1,13 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- Generator: Adobe Illustrator 19.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 492.004 492.004" style="enable-background:new 0 0 492.004 492.004;" xml:space="preserve" fill="#fff">
<g>
<g>
<path d="M382.678,226.804L163.73,7.86C158.666,2.792,151.906,0,144.698,0s-13.968,2.792-19.032,7.86l-16.124,16.12
c-10.492,10.504-10.492,27.576,0,38.064L293.398,245.9l-184.06,184.06c-5.064,5.068-7.86,11.824-7.86,19.028
c0,7.212,2.796,13.968,7.86,19.04l16.124,16.116c5.068,5.068,11.824,7.86,19.032,7.86s13.968-2.792,19.032-7.86L382.678,265
c5.076-5.084,7.864-11.872,7.848-19.088C390.542,238.668,387.754,231.884,382.678,226.804z"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 861 B

BIN
Source/SITE/PIC/tera.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

BIN
Source/SITE/PIC/tina629.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

BIN
Source/SITE/PIC/vbitex.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.5 KiB

BIN
Source/SITE/PIC/vtools.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 53 KiB

View File

@ -234,7 +234,7 @@
<div class="col-md-6">
<div class="about bg-grey">
<h4>Traditional Blockchain</h3>
<p><img src="../PIC/sbch.png" /></p>
<p><img src="../PIC/sbch.png" class="img img--100" /></p>
</div>
</div>
<!-- /Key Feature -->
@ -243,7 +243,7 @@
<div class="col-md-6">
<div class="about bg-grey" style="height: 315px;">
<h4>TERA Blockchain</h3>
<p><img src="../PIC/tbch.png" /></p>
<p><img src="../PIC/tbch.png" class="img img--100" /></p>
</div>
</div>
<!-- /Key Feature -->
@ -358,53 +358,55 @@
<h2 class="title md-down-left">Technologie</h2>
</div>
<!-- /Section header -->
<div class="no-more-tables">
<table class="table table-bordered">
<thead class="cf">
<tr>
<th>Max Supply</th>
<th>Ausgabedatum</th>
<th>Konsens</th>
<th>Algorithmus</th>
<th>Programmiersprache</th>
</tr>
</thead>
<tbody>
<tr>
<td>1,000,000,000</td>
<td>01. Juli 2018</td>
<td>POW</td>
<td>sha3, secp256k1</td>
<td>Javascript</td>
</tr>
</tbody>
</table>
<table class="table table-bordered">
<thead class="cf">
<tr>
<th>Blockgröße</th>
<th>Pre-mine</th>
<th>Programmquellen</th>
<th>Explorer</th>
<th>Plattform</th>
</tr>
</thead>
<tbody>
<tr>
<td>120 KB</td>
<td>5%</td>
<td>
<a href="https://sourceforge.net/p/tera/code/ci/master/tree/" target="_blank" style="font-size: 14px;">sourceforge.net</a>,
<a href="https://gitlab.com/terafoundation/tera" target="_blank" style="font-size: 14px;">gitlab.com</a>
</td>
<td>
<a href="https://terafoundation.org/explorer.html" target="_blank" style="font-size: 14px;">terafoundation.org</a>
</td>
<td>NodeJS</td>
</tr>
</tbody>
</table>
</div>
<dl class="spec-list">
<div class="spec-list__item">
<dt class="spec-list__title">Max Supply</dt>
<dd class="spec-list__value">1,000,000,000</dd>
</div>
<div class="spec-list__item">
<dt class="spec-list__title">Ausgabedatum</dt>
<dd class="spec-list__value">01. Juli 2018</dd>
</div>
<div class="spec-list__item">
<dt class="spec-list__title">Konsens</dt>
<dd class="spec-list__value">POW</dd>
</div>
<div class="spec-list__item">
<dt class="spec-list__title">Algorithmus</dt>
<dd class="spec-list__value">sha3, secp256k1</dd>
</div>
<div class="spec-list__item">
<dt class="spec-list__title">Programmiersprache</dt>
<dd class="spec-list__value">JavaScript</dd>
</div>
<div class="spec-list__item">
<dt class="spec-list__title">Blockgröße</dt>
<dd class="spec-list__value">130 KB</dd>
</div>
<div class="spec-list__item">
<dt class="spec-list__title">Pre-mine</dt>
<dd class="spec-list__value">5%</dd>
</div>
<div class="spec-list__item">
<dt class="spec-list__title">Programmquellen</dt>
<dd class="spec-list__value">
<a href="https://sourceforge.net/p/tera/code/ci/master/tree/" target="_blank">sourceforge.net</a>,
<a href="https://gitlab.com/terafoundation/tera" target="_blank">gitlab.com</a>
</dd>
</div>
<div class="spec-list__item">
<dt class="spec-list__title">Explorer</dt>
<dd class="spec-list__value">
<a href="https://terafoundation.org/explorer.html" target="_blank">terafoundation.org</a>
</dd>
</div>
<div class="spec-list__item">
<dt class="spec-list__title">Plattform</dt>
<dd class="spec-list__value">NodeJS</dd>
</div>
</dl>
</div>
<!-- /Row -->

BIN
Source/SITE/game/bl0.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 824 B

BIN
Source/SITE/game/block.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 891 B

BIN
Source/SITE/game/btn11.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 874 B

BIN
Source/SITE/game/btn12.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 876 B

BIN
Source/SITE/game/btn13.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 875 B

BIN
Source/SITE/game/btn14.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 879 B

BIN
Source/SITE/game/btn21.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 876 B

BIN
Source/SITE/game/btn22.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 875 B

BIN
Source/SITE/game/btn23.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 874 B

BIN
Source/SITE/game/btn24.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 876 B

BIN
Source/SITE/game/btn3.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

BIN
Source/SITE/game/btn4.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

BIN
Source/SITE/game/dotl.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 852 B

BIN
Source/SITE/game/dots.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 828 B

BIN
Source/SITE/game/enemy1.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 883 B

BIN
Source/SITE/game/enemy2.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 883 B

BIN
Source/SITE/game/enemy3.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 883 B

BIN
Source/SITE/game/enemy4.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 883 B

BIN
Source/SITE/game/enemy5.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 872 B

BIN
Source/SITE/game/gate.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 834 B

View File

@ -0,0 +1,28 @@
<HTML>
<HEAD>
<TITLE>P-MAN</TITLE>
<!--
.......SECRET COMMAND.......
This game is very hard to clear, so I give you SECRET COMMAND.
"EASY" EASY MODE (ENEMY 3/4 SPEED)
"EASIEST" EASIEST MODE (ENEMY 1/2 SPEED)
Before you start, type "EASY" or "EASIEST" in SCORE WINDOW.
Perhaps you can clear it easily.
//-->
</HEAD>
<FRAMESET COLS="336,*">
<FRAME SRC="pman.html" NAME="Pman" NORESIZE SCROLLING="NO">
<FRAME SRC="pcontrol.html" NAME="Pcontrol" NORESIZE SCROLLING="NO">
</FRAMESET>
<NOFRAME>
You must get Netscape 3.0 or later.
</NOFRAME>
</HTML>

BIN
Source/SITE/game/null.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 831 B

View File

@ -0,0 +1,194 @@
<HTML>
<FORM NAME="Pcontrol">
<HEAD>
<TITLE>Pcontrol</TITLE>
<SCRIPT LANGUAGE="JavaScript">
<!--
var timerID = null
var timerINT = 20 //interval (ms)
var playflag=0;
var inkey=0
var tkey = "1"
var icons = new Array(20); //btn image
icons[1]=new Image();icons[1].src="btn14.gif";
icons[2]=new Image();icons[2].src="btn11.gif";
icons[3]=new Image();icons[3].src="btn12.gif";
icons[4]=new Image();icons[4].src="btn13.gif";
icons[11]=new Image();icons[11].src="btn24.gif";
icons[12]=new Image();icons[12].src="btn21.gif";
icons[13]=new Image();icons[13].src="btn22.gif";
icons[14]=new Image();icons[14].src="btn23.gif";
systm=""
ver=navigator.appVersion
Nv=ver.charAt(0)
len=ver.length
for(iln=0;iln<len;iln++) if(ver.charAt(iln)=="(") break
systm = ver.charAt(iln+1).toUpperCase()
if (systm != "C"){if (Nv >= 4){
document.onkeydown = keyDown
document.captureEvents(Event.KEYDOWN)
}}
function keyDown(DnEvents){
k=DnEvents.which
if (k == 52){keyscan(1)} //4
if (k == 56){keyscan(2)} //8
if (k == 54){keyscan(3)} //6
if (k == 50){keyscan(4)} //2
}
function interval1(){
clearTimeout(timerID)
clearTimeout(timerID)
clearTimeout(timerID)
clearTimeout(timerID)
clearTimeout(timerID)
clearTimeout(timerID)
clearTimeout(timerID)
clearTimeout(timerID)
clearTimeout(timerID)
clearTimeout(timerID)
//10key scan
if (systm == "C"){Nv=3}
if (Nv <= 3){
document.Pcontrol.DUM.click()
tkey=document.Pcontrol.tenkey.value
if (tkey != ""){
document.Pcontrol.tenkey.value=""
document.Pcontrol.tenkey.focus()
if (tkey.indexOf("4") >= 0){keyscan(1)}
if (tkey.indexOf("8") >= 0){keyscan(2)}
if (tkey.indexOf("6") >= 0){keyscan(3)}
if (tkey.indexOf("2") >= 0){keyscan(4)}
}else{
document.Pcontrol.tenkey.focus()
}
}else{
}
timerID = setTimeout("interval1()",timerINT)
}
function intSTOP(){
clearTimeout(timerID)
}
//btn write
function SetBtn(flag, position){
document.images[position].src=icons[flag].src;
}
//no operation
function nop(){}
//MODE change
function MODEcheck(){}
//starter
function starter(){
playflag=playflag+1
if (playflag == 1){SetBtn(11,1)
SetBtn(2,0)
SetBtn(3,2)
SetBtn(4,3)
tkey=""
document.Pcontrol.tenkey.value=""
document.Pcontrol.tenkey.focus()
timerID = setTimeout("interval1()",timerINT)
}
if (playflag == 2){playflag=0
SetBtn(1,1)
SetBtn(2,0)
SetBtn(3,2)
SetBtn(4,3)
document.Pcontrol.tenkey.value=""
intSTOP()
document.Pcontrol.MES.value="Click START";
}
parent.Pman.document.PMAN.CTRL.value="11";
}
//key scan
function keyscan(kscan){
inkey=kscan;
if (playflag == 1){
tmpvalue=parent.Pman.document.PMAN.CTRL.value
if (tmpvalue != "0"){
parent.Pman.document.PMAN.CTRL.value=inkey
if (inkey == "1"){
SetBtn(11,1)
SetBtn(2,0)
SetBtn(3,2)
SetBtn(4,3)
}
if (inkey == "2"){
SetBtn(1,1)
SetBtn(12,0)
SetBtn(3,2)
SetBtn(4,3)
}
if (inkey == "3"){
SetBtn(1,1)
SetBtn(2,0)
SetBtn(13,2)
SetBtn(4,3)
}
if (inkey == "4"){
SetBtn(1,1)
SetBtn(2,0)
SetBtn(3,2)
SetBtn(14,3)
}
}
}
}
//-->
</SCRIPT>
</HEAD>
<BODY BGCOLOR="#FFFF00" TEXT="#004400" LINK="#FFFF00" VLINK="#FFFF00">
<CENTER><H1>P-MAN</H1></CENTER><BR>
<H3><CENTER>SCORE:<INPUT TYPE="text" NAME="MES" SIZE=13 VALUE = "Click START" ></CENTER></H3><BR>
<CENTER><A HREF="javascript:keyscan(2)" onMouseOver="keyscan(2)"><IMG WIDTH=64 HEIGHT=32 SRC="btn11.gif"></A><BR><A HREF="javascript:keyscan(1)" onMouseOver="keyscan(1)"><IMG WIDTH=64 HEIGHT=32 SRC="btn14.gif"></A><A HREF="javascript:keyscan(3)" onMouseOver="keyscan(3)"><IMG WIDTH=64 HEIGHT=32 SRC="btn12.gif"></A><BR><A HREF="javascript:keyscan(4)" onMouseOver="keyscan(4)"><IMG WIDTH=64 HEIGHT=32 SRC="btn13.gif"></A><BR></CENTER><BR><P>
<CENTER><A HREF="javascript:starter()"><IMG SRC="btn3.gif"></A></CENTER>
<CENTER><A HREF="javascript:history.back()" TARGET="_top"><IMG SRC="btn4.gif"></A></CENTER>
<SCRIPT LANGUAGE="JavaScript">
<!--
ver=navigator.appVersion
len=ver.length
for(iln=0;iln<len;iln++) if(ver.charAt(iln)=="(") break
systm = ver.charAt(iln+1).toUpperCase()
if(systm !="C"){
document.write("<BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P>")
document.write("<BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P>")
document.write("<BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P>")
document.write("<BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P>")
document.write("<BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P>")
}
//-->
</SCRIPT>
<INPUT TYPE="text" NAME="tenkey" SIZE=1 VALUE = "" >
<INPUT TYPE="button" NAME="DUM" VALUE="">
</BODY>
</FORM>
</HTML>

664
Source/SITE/game/pman.html Normal file
View File

@ -0,0 +1,664 @@
<HTML>
<FORM NAME="PMAN">
<HEAD>
<TITLE>Pman</TITLE>
<SCRIPT LANGUAGE="JavaScript">
<!--
var timerID = null
var timerINT = 300 //interval (ms)
var tmps = new Array(20); //temp array
var mapd = new Array(420); //map data array
var inkey = 0 //mouse status
var acti = 0 //on play and key flag
var ptnflg = 0 //paturn flag
var myX = 0
var myY = 0
var myPOS=0
var myPTN=4
var myPOSold=313
var score=0
var remain=157
var ofno=0
var acno=0
var enno=0
var oldDOT = new Array(5);
var enewait = new Array(5);
var eneacti = new Array(5);
var eneX = new Array(5);
var eneY = new Array(5);
var enePOS = new Array(5);
var enePOSold = new Array(5);
var bluewait = 0
var blueflag=1
var blueacti=0
var bonus = 100
var URAWAZA = 1
var URAflag = 0
var icons = new Array(20); //chr image
icons[0] =new Image();icons[0].src ="bl0.gif";
icons[1] =new Image();icons[1].src ="block.gif";
icons[2] =new Image();icons[2].src ="dots.gif";
icons[3] =new Image();icons[3].src ="dotl.gif";
icons[4] =new Image();icons[4].src ="pman0.gif";
icons[5] =new Image();icons[5].src ="pman1.gif";
icons[6] =new Image();icons[6].src ="pman2.gif";
icons[7] =new Image();icons[7].src ="pman3.gif";
icons[8] =new Image();icons[8].src ="pman4.gif";
icons[9] =new Image();icons[9].src ="gate.gif";
icons[10]=new Image();icons[10].src="enemy1.gif";
icons[11]=new Image();icons[11].src="enemy2.gif";
icons[12]=new Image();icons[12].src="enemy3.gif";
icons[13]=new Image();icons[13].src="enemy4.gif";
icons[14]=new Image();icons[14].src="enemy5.gif";
//restarter
function restarter(){
document.PMAN.CTRL.value="0"
tmpacti="0"
readstyle()
PARAset()
}
//init
function init(){
PARAset()
timerID = setTimeout("interval1()",timerINT)
}
function PARAset(){
score=0
remain=157
myX=9
myY=16
myPOSold=313
ptnflg=0
enewait[1]=0
enewait[2]=10
enewait[3]=20
enewait[4]=30
eneacti[1]=1
eneacti[2]=2
eneacti[3]=1
eneacti[4]=2
eneX[1]=9
eneY[1]=8
eneX[2]=8
eneY[2]=10
eneX[3]=9
eneY[3]=10
eneX[4]=10
eneY[4]=10
enePOSold[1]=161
enePOSold[2]=198
enePOSold[3]=199
enePOSold[4]=200
oldDOT[1]=0
oldDOT[2]=0
oldDOT[3]=0
oldDOT[4]=0
bluewait=0
blueflag=1
blueacti=0
bonus = 100
URAWAZA = 1
URAflag = 0
}
function interval1(){
tmpacti=document.PMAN.CTRL.value
clearTimeout(timerID)
timerID = setTimeout("interval1()",timerINT)
//restart check
if (tmpacti == "11"){
tmpURA=parent.Pcontrol.document.Pcontrol.MES.value
URAWAZA=1
URAflag=0
if (tmpURA == "EASY"){URAWAZA=4}
if (tmpURA == "EASIEST"){URAWAZA=2}
if (score == 0){document.PMAN.CTRL.value="1"
tmpacti="1"
}else{restarter()}
}
//active flag check
if (tmpacti != "0"){
blueflag=1
if (bluewait > 0){
bluewait=bluewait-1
blueflag=-1
}else{
blueacti=0
}
//new left check
if (tmpacti == "1"){
tmppos=myY*19+myX-1
if (mapd[tmppos] != 1){acti=1}
if (myX == 0){acti=1}
}
//new right check
if (tmpacti == 3){
tmppos=myY*19+myX+1
if (mapd[tmppos] != 1){acti=3}
if (myX == 18){acti=3}
}
//new up check
if (tmpacti == 2){
tmppos=myY*19-19+myX
if (mapd[tmppos] != 1){acti=2}
}
//new down check
if (tmpacti == 4){
tmppos=myY*19+19+myX
if (mapd[tmppos] != 1){acti=4}
}
//left check
if (acti == 1){
tmppos=myY*19+myX-1
if (mapd[tmppos] != 1){myX=myX-1
}else{if (myX == 0){myX=18
}else{if (mapd[tmppos-18] != 1){acti=2
parent.Pcontrol.document.Pcontrol.tenkey.value="8"
}else{acti=4
parent.Pcontrol.document.Pcontrol.tenkey.value="2"
}
}
}
}
//right check
if (acti == 3){
tmppos=myY*19+myX+1
if (mapd[tmppos] != 1){myX=myX+1
}else{if (myX == 18){myX=0
}else{if (mapd[tmppos-20] != 1){acti=2
parent.Pcontrol.document.Pcontrol.tenkey.value="8"
}else{acti=4
parent.Pcontrol.document.Pcontrol.tenkey.value="2"
}
}
}
}
//up check
if (acti == 2){
tmppos=myY*19-19+myX
if (mapd[tmppos] != 1){myY=myY-1
}else{if (mapd[tmppos+18] != 1){acti=1
myX=myX-1
parent.Pcontrol.document.Pcontrol.tenkey.value="4"
}else{acti=3
myX=myX+1
parent.Pcontrol.document.Pcontrol.tenkey.value="6"
}
}
}
//down check
if (acti == 4){
tmppos=myY*19+19+myX
if (mapd[tmppos] != 1){myY=myY+1
}else{if (mapd[tmppos-20] != 1){acti=1
myX=myX-1
parent.Pcontrol.document.Pcontrol.tenkey.value="4"
}else{acti=3
myX=myX+1
parent.Pcontrol.document.Pcontrol.tenkey.value="6"
}
}
}
//move P-MAN
myPOS=myY*19+myX
ptnflg=ptnflg+1
myPTN=4
if (ptnflg == 2){ptnflg=0
}else{myPTN=4+acti
}
//move enemy
tmpURAflag=1
URAflag=URAflag+1
if (URAflag >= URAWAZA){
tmpURAflag=0
URAflag=0
}
if (URAWAZA == 1){tmpURAflag=1}
if (blueflag == -1){
blueacti=blueacti+1
if (blueacti == 2){blueacti=0}
}
for (ij=1; ij<5; ij++){
enno=ij
if (blueacti !=1){
if (tmpURAflag == 1){calenemy()}
}
enePOS[ij]=eneY[ij]*19+eneX[ij]
}
//score check
if (mapd[myPOS] == 2){mapd[myPOS]=0
remain=remain-1
score=score+10}
if (mapd[myPOS] == 3){mapd[myPOS]=0
remain=remain-1
bluewait=30
blueacti=0
bonus=100
score=score+50}
parent.Pcontrol.document.Pcontrol.MES.value=score+"pts"
//ending
for (iz=1; iz<5; iz++){
if (enePOSold[iz] == myPOS){
if (enePOS[iz] == myPOSold){
enePOS[iz]=myPOS
}
}
if (enePOS[iz] == myPOS){
if (blueflag == 1){
document.PMAN.CTRL.value="0"
parent.Pcontrol.document.Pcontrol.MES.value=score+"pts NG"
}else{
enewait[iz]=5
enePOS[iz]=199
eneX[iz]=9
eneY[iz]=10
eneacti[iz]=1
score=score+bonus
bonus=bonus*2
parent.Pcontrol.document.Pcontrol.MES.value=score+"pts"
}
}
}
if (remain == 0){document.PMAN.CTRL.value="0"
parent.Pcontrol.document.Pcontrol.MES.value=score+"pts OK"
}
//old CHR clear
SetIcon(0,myPOSold)
for (ij=1; ij<5; ij++){
SetIcon(oldDOT[ij],enePOSold[ij])
}
//new CHR write
mapd[myPOS]=0
SetIcon(myPTN,myPOS)
myPOSold=myPOS
for (ij=1; ij<5; ij++){
tmpenePOS=enePOS[ij]
oldDOT[ij]=mapd[tmpenePOS]
tmpenePTN=14
if (bluewait == 0){tmpenePTN=9+ij}
if (bluewait == 2){tmpenePTN=9+ij}
if (bluewait == 4){tmpenePTN=9+ij}
if (bluewait == 6){tmpenePTN=9+ij}
if (bluewait == 8){tmpenePTN=9+ij}
if (bluewait == 10){tmpenePTN=9+ij}
SetIcon(tmpenePTN,tmpenePOS)
enePOSold[ij]=enePOS[ij]
}
}
}
//paturn write
function SetIcon(flag, position){
document.images[position].src=icons[flag].src;
}
function readstyle(){
for (id=0; id<22; id++){;
for (ie=0; ie<19; ie++){;
ig = tmps[id].charAt(ie);
ih = id*19+ie;
if (ig == "0"){mapd[ih] = 0};
if (ig == "1"){mapd[ih] = 1};
if (ig == "2"){mapd[ih] = 2};
if (ig == "3"){mapd[ih] = 3};
SetIcon (mapd[ih],ih);
};
};
SetIcon(9,180)
SetIcon(10,161)
SetIcon(11,198)
SetIcon(12,199)
SetIcon(13,200)
}
function calenemy(){
if (enewait[enno] >= 1){
if (enewait[enno] == 1){
SetIcon(oldDOT[enno],enePOSold[enno])
eneX[enno]=9
eneY[enno]=8
}
enewait[enno]=enewait[enno]-1
}else{
if (enno == 1){enetype1()}
if (enno == 2){enetype2()}
if (enno == 3){enetype3()}
if (enno == 4){enetype4()}
}
}
function offsetcal(acno){
if (acno == 1){ofno=-1}
if (acno == 2){ofno=-19}
if (acno == 3){ofno=1}
if (acno == 4){ofno=19}
}
function eneXYcal(){
if (eneacti[enno] == 1){eneX[enno]=eneX[enno]-1}
if (eneacti[enno] == 2){eneY[enno]=eneY[enno]-1}
if (eneacti[enno] == 3){eneX[enno]=eneX[enno]+1}
if (eneacti[enno] == 4){eneY[enno]=eneY[enno]+1}
}
function enetype1(){
//crossing chaser
tmpLR=0
tmpeneacti1=eneacti[enno]+1
if (tmpeneacti1 >= 5){tmpeneacti1=tmpeneacti1-4}
offsetcal(tmpeneacti1)
tmpenepos=eneY[enno]*19+eneX[enno]+ofno
if (mapd[tmpenepos] != 1){tmpLR=1}
tmpeneacti1=eneacti[enno]+3
if (tmpeneacti1 >= 5){tmpeneacti1=tmpeneacti1-4}
offsetcal(tmpeneacti1)
tmpenepos=eneY[enno]*19+eneX[enno]+ofno
if (mapd[tmpenepos] != 1){tmpLR=1}
if (eneX[enno] == 18){tmpLR=1}
if (eneX[enno] == 0){tmpLR=1}
if (tmpLR == 1){
eneacti[enno]=0
if (myX*blueflag >= eneX[enno]*blueflag){
tmpenepos=eneY[enno]*19+eneX[enno]+1
if (mapd[tmpenepos] != 1){eneacti[enno]=3}
}else{
tmpenepos=eneY[enno]*19+eneX[enno]-1
if (mapd[tmpenepos] != 1){eneacti[enno]=1}
}
tmpsubY=myY-eneY[enno]
if (tmpsubY <= 0){tmpsubY=-tmpsubY}
tmpsubX=myX-eneX[enno]
if (tmpsubX <= 0){tmpsubX=-tmpsubX}
tmpsubXY=tmpsubY-tmpsubX
if (eneacti[enno] == 0){tmpsubXY=1}
if (tmpsubXY*blueflag >= 0){
if (myY*blueflag >= eneY[enno]*blueflag){
tmpenepos=eneY[enno]*19+eneX[enno]+19
if (mapd[tmpenepos] != 1){eneacti[enno]=4}
}else{
tmpenepos=eneY[enno]*19+eneX[enno]-19
if (mapd[tmpenepos] != 1){eneacti[enno]=2}
}
}
if (eneacti[enno] == 0){
tmpenepos=eneY[enno]*19+eneX[enno]-1
if (mapd[tmpenepos] != 1){eneacti[enno]=1}
if (eneacti[enno] == 0){
tmpenepos=eneY[enno]*19+eneX[enno]-19
if (mapd[tmpenepos] != 1){eneacti[enno]=2}
if (eneacti[enno] == 0){
tmpenepos=eneY[enno]*19+eneX[enno]+1
if (mapd[tmpenepos] != 1){eneacti[enno]=3
}else{eneacti[enno]=4
}
}
}
}
}
eneXYcal()
}
function enetype2(){
//straight lover
offsetcal(eneacti[enno])
tmpenepos=eneY[enno]*19+eneX[enno]+ofno
if (mapd[tmpenepos] == 1){
eneacti[enno]=0
if (myX*blueflag >= eneX[enno]*blueflag){
tmpenepos=eneY[enno]*19+eneX[enno]+1
if (mapd[tmpenepos] != 1){eneacti[enno]=3}
}else{
tmpenepos=eneY[enno]*19+eneX[enno]-1
if (mapd[tmpenepos] != 1){eneacti[enno]=1}
}
tmpsubY=myY-eneY[enno]
if (tmpsubY <= 0){tmpsubY=-tmpsubY}
tmpsubX=myX-eneX[enno]
if (tmpsubX <= 0){tmpsubX=-tmpsubX}
tmpsubXY=tmpsubY-tmpsubX
if (eneacti[enno] == 0){tmpsubXY=1}
if (tmpsubXY*blueflag >= 0){
if (myY*blueflag >= eneY[enno]*blueflag){
tmpenepos=eneY[enno]*19+eneX[enno]+19
if (mapd[tmpenepos] != 1){eneacti[enno]=4}
}else{
tmpenepos=eneY[enno]*19+eneX[enno]-19
if (mapd[tmpenepos] != 1){eneacti[enno]=2}
}
}
if (eneacti[enno] == 0){
tmpenepos=eneY[enno]*19+eneX[enno]-1
if (mapd[tmpenepos] != 1){eneacti[enno]=1}
if (eneacti[enno] == 0){
tmpenepos=eneY[enno]*19+eneX[enno]-19
if (mapd[tmpenepos] != 1){eneacti[enno]=2}
if (eneacti[enno] == 0){
tmpenepos=eneY[enno]*19+eneX[enno]+1
if (mapd[tmpenepos] != 1){eneacti[enno]=3
}else{eneacti[enno]=4
}
}
}
}
}
eneXYcal()
}
function enetype3(){
//crossing turner
tmpeneacti1=eneacti[enno]+1
if (tmpeneacti1 >= 5){tmpeneacti1=tmpeneacti1-4}
tmptmpacti=eneacti[enno]
eneacti[enno]=0
turncheck()
if (eneacti[enno] == 0){
tmpeneacti1=eneacti[enno]+3
if (tmpeneacti1 >= 5){tmpeneacti1=tmpeneacti1-4}
turncheck()
}
if (eneacti[enno] == 0){
eneacti[enno]=tmptmpacti
offsetcal(eneacti[enno])
tmpenepos=eneY[enno]*19+eneX[enno]+ofno
if (mapd[tmpenepos] == 1){
eneacti[enno]=0
if (myX*blueflag >= eneX[enno]*blueflag){
tmpenepos=eneY[enno]*19+eneX[enno]+1
if (mapd[tmpenepos] != 1){eneacti[enno]=3}
}else{
tmpenepos=eneY[enno]*19+eneX[enno]-1
if (mapd[tmpenepos] != 1){eneacti[enno]=1}
}
tmpsubY=myY-eneY[enno]
if (tmpsubY <= 0){tmpsubY=-tmpsubY}
tmpsubX=myX-eneX[enno]
if (tmpsubX <= 0){tmpsubX=-tmpsubX}
tmpsubXY=tmpsubY-tmpsubX
if (eneacti[enno] == 0){tmpsubXY=1}
if (tmpsubXY*blueflag >= 0){
if (myY*blueflag >= eneY[enno]*blueflag){
tmpenepos=eneY[enno]*19+eneX[enno]+19
if (mapd[tmpenepos] != 1){eneacti[enno]=4}
}else{
tmpenepos=eneY[enno]*19+eneX[enno]-19
if (mapd[tmpenepos] != 1){eneacti[enno]=2}
}
}
if (eneacti[enno] == 0){
tmpenepos=eneY[enno]*19+eneX[enno]-1
if (mapd[tmpenepos] != 1){eneacti[enno]=1}
if (eneacti[enno] == 0){
tmpenepos=eneY[enno]*19+eneX[enno]-19
if (mapd[tmpenepos] != 1){eneacti[enno]=2}
if (eneacti[enno] == 0){
tmpenepos=eneY[enno]*19+eneX[enno]+1
if (mapd[tmpenepos] != 1){eneacti[enno]=3
}else{eneacti[enno]=4
}
}
}
}
}
}
eneXYcal()
}
function enetype4(){
//everytime chaser
eneacti[enno]=0
if (myX*blueflag >= eneX[enno]*blueflag){
tmpenepos=eneY[enno]*19+eneX[enno]+1
if (mapd[tmpenepos] != 1){eneacti[enno]=3}
}else{
tmpenepos=eneY[enno]*19+eneX[enno]-1
if (mapd[tmpenepos] != 1){eneacti[enno]=1}
}
tmpsubY=myY-eneY[enno]
if (tmpsubY <= 0){tmpsubY=-tmpsubY}
tmpsubX=myX-eneX[enno]
if (tmpsubX <= 0){tmpsubX=-tmpsubX}
tmpsubXY=tmpsubY-tmpsubX
if (eneacti[enno] == 0){tmpsubXY=1}
if (tmpsubXY*blueflag >= 0){
if (myY*blueflag >= eneY[enno]*blueflag){
tmpenepos=eneY[enno]*19+eneX[enno]+19
if (mapd[tmpenepos] != 1){eneacti[enno]=4}
}else{
tmpenepos=eneY[enno]*19+eneX[enno]-19
if (mapd[tmpenepos] != 1){eneacti[enno]=2}
}
}
if (eneacti[enno] == 0){
tmpenepos=eneY[enno]*19+eneX[enno]-1
if (mapd[tmpenepos] != 1){eneacti[enno]=1}
if (eneacti[enno] == 0){
tmpenepos=eneY[enno]*19+eneX[enno]-19
if (mapd[tmpenepos] != 1){eneacti[enno]=2}
if (eneacti[enno] == 0){
tmpenepos=eneY[enno]*19+eneX[enno]+1
if (mapd[tmpenepos] != 1){eneacti[enno]=3
}else{eneacti[enno]=4
}
}
}
}
eneXYcal()
}
function turncheck(){
if (tmpeneacti1 == 1){
if (myX*blueflag < eneX[enno]*blueflag){
tmpenepos=eneY[enno]*19+eneX[enno]-1
if (mapd[tmpenepos] != 1){eneacti[enno]=1}
}
}
if (tmpeneacti1 == 3){
if (myX*blueflag > eneX[enno]*blueflag){
tmpenepos=eneY[enno]*19+eneX[enno]+1
if (mapd[tmpenepos] != 1){eneacti[enno]=3}
}
}
if (tmpeneacti1 == 2){
if (myY*blueflag < eneY[enno]*blueflag){
tmpenepos=eneY[enno]*19+eneX[enno]-19
if (mapd[tmpenepos] != 1){eneacti[enno]=2}
}
}
if (tmpeneacti1 == 4){
if (myY*blueflag < eneY[enno]*blueflag){
tmpenepos=eneY[enno]*19+eneX[enno]+19
if (mapd[tmpenepos] != 1){eneacti[enno]=4}
}
}
}
//-->
</SCRIPT>
</HEAD>
<BODY BGCOLOR="#FFFF00" TEXT="#004400" LINK="#FFFF00" VLINK="#FFFF00" ONLOAD="init()">
<SCRIPT LANGUAGE="JavaScript">
<!--
//screen fill
document.write("<PRE><CENTER>");
for (iad=0; iad<22; iad++){;
for (iac=0; iac<19; iac++){document.write("<IMG BORDER=0 WIDTH=16 HEIGHT=16 SRC='bl0.gif'>")};
document.write("<BR>");
};
document.write("</CENTER></PRE>");
tmps[0] ="1111111111111111111";
tmps[1] ="1222222221222222221";
tmps[2] ="1211211121211121121";
tmps[3] ="1311211121211121131";
tmps[4] ="1222222222222222221";
tmps[5] ="1211212111112121121";
tmps[6] ="1222212221222122221";
tmps[7] ="1111211101011121111";
tmps[8] ="1111210000000121111";
tmps[9] ="1111210111110121111";
tmps[10]="0000200100010020000";
tmps[11]="1111210111110121111";
tmps[12]="1111210000000121111";
tmps[13]="1111210111110121111";
tmps[14]="1222222221222222221";
tmps[15]="1211211121211121121";
tmps[16]="1321222222222221231";
tmps[17]="1121212111112121211";
tmps[18]="1222212221222122221";
tmps[19]="1211111121211111121";
tmps[20]="1222222222222222221";
tmps[21]="1111111111111111111";
//read style data
readstyle();
//-->
</SCRIPT>
<BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P><BR><P>
<INPUT TYPE="text" NAME="CTRL" SIZE=10 VALUE = "0" >
</BODY>
</FORM>
</HTML>

BIN
Source/SITE/game/pman0.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 852 B

BIN
Source/SITE/game/pman1.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 851 B

BIN
Source/SITE/game/pman2.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 858 B

BIN
Source/SITE/game/pman3.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 852 B

BIN
Source/SITE/game/pman4.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 858 B

View File

@ -11,7 +11,7 @@
{{Edit=./SITE/CONTENT/en-index-about-title.md}}
</div>
<p class="tera-logo-panel">
<img src="PIC/map-nodes.jpg" width="312" height="166"/>
<img src="PIC/map-nodes.jpg" width="312" height="166" class="img img--100" />
{{Edit=./SITE/CONTENT/en-index-about-text.md}}
</p>
<p class="tera-logo-panel">
@ -55,7 +55,7 @@
<!-- Key Feature -->
<div class="col-md-4">
<div class="about bg-grey f-panel">
<div class="about bg-grey">
<i class="fab fa-hubspot"></i>
{{Edit=./SITE/CONTENT/en-index-features-1.md}}
</div>
@ -64,7 +64,7 @@
<!-- Key Feature -->
<div class="col-md-4">
<div class="about bg-grey f-panel">
<div class="about bg-grey">
<i class="fas fa-boxes"></i>
{{Edit=./SITE/CONTENT/en-index-features-2.md}}
</div>
@ -73,7 +73,7 @@
<!-- Key Feature -->
<div class="col-md-4">
<div class="about bg-grey f-panel">
<div class="about bg-grey">
<i class="fas fa-university"></i>
{{Edit=./SITE/CONTENT/en-index-features-3.md}}
</div>
@ -82,7 +82,7 @@
<!-- Key Feature -->
<div class="col-md-4">
<div class="about bg-grey f-panel">
<div class="about bg-grey">
<i class="fas fa-hand-holding-usd"></i>
{{Edit=./SITE/CONTENT/en-index-features-4.md}}
</div>
@ -91,7 +91,7 @@
<!-- Key Feature -->
<div class="col-md-4">
<div class="about bg-grey f-panel">
<div class="about bg-grey">
<i class="fas fa-shield-alt"></i>
{{Edit=./SITE/CONTENT/en-index-features-5.md}}
</div>
@ -100,7 +100,7 @@
<!-- Key Feature -->
<div class="col-md-4">
<div class="about bg-grey f-panel">
<div class="about bg-grey">
<i class="fas fa-code"></i>
{{Edit=./SITE/CONTENT/en-index-features-6.md}}
</div>
@ -128,54 +128,56 @@
<h2>Specification</h2>
</div>
<!-- /Section header -->
<div class="no-more-tables">
<table class="table table-bordered">
<thead class="cf">
<tr>
<th>Max Supply</th>
<th>Launch date</th>
<th>Consensus Protocol</th>
<th>Cryptography</th>
<th>Smart contract language</th>
</tr>
</thead>
<tbody>
<tr>
<td>1,000,000,000</td>
<td>Jul-01-2018</td>
<td>POW</td>
<td>sha3, secp256k1</td>
<td>Javascript</td>
</tr>
</tbody>
</table>
<table class="table table-bordered">
<thead class="cf">
<tr>
<th>Block Size</th>
<th>Pre-mine</th>
<th>Source Code</th>
<th>Explorer</th>
<th>Platform</th>
</tr>
</thead>
<tbody>
<tr>
<td>130 KB</td>
<td>5%</td>
<td>
<a href="https://sourceforge.net/p/tera/code/ci/master/tree/" target="_blank">sourceforge.net</a>,
<a href="https://gitlab.com/terafoundation/tera" target="_blank">gitlab.com</a>
</td>
<td>
<a href="https://terafoundation.org/explorer.html" target="_blank">terafoundation.org</a>
</td>
<td>NodeJS</td>
</tr>
</tbody>
</table>
</div>
<dl class="spec-list">
<div class="spec-list__item">
<dt class="spec-list__title">Max Supply</dt>
<dd class="spec-list__value"><a href="/dapp/67">1,000,000,000</a></dd>
</div>
<div class="spec-list__item">
<dt class="spec-list__title">Launch date</dt>
<dd class="spec-list__value">Jul-01-2018</dd>
</div>
<div class="spec-list__item">
<dt class="spec-list__title">Consensus Protocol</dt>
<dd class="spec-list__value">POW</dd>
</div>
<div class="spec-list__item">
<dt class="spec-list__title">Cryptography</dt>
<dd class="spec-list__value">sha3, secp256k1</dd>
</div>
<div class="spec-list__item">
<dt class="spec-list__title">Smart contract language</dt>
<dd class="spec-list__value">JavaScript</dd>
</div>
<div class="spec-list__item">
<dt class="spec-list__title">Block Size</dt>
<dd class="spec-list__value">130 KB</dd>
</div>
<div class="spec-list__item">
<dt class="spec-list__title">Pre-mine</dt>
<dd class="spec-list__value">5%</dd>
</div>
<div class="spec-list__item">
<dt class="spec-list__title">Source Code</dt>
<dd class="spec-list__value">
<a href="https://sourceforge.net/p/tera/code/ci/master/tree/" target="_blank">sourceforge.net</a>,
<a href="https://gitlab.com/terafoundation/tera" target="_blank">gitlab.com</a>
</dd>
</div>
<div class="spec-list__item">
<dt class="spec-list__title">Explorer</dt>
<dd class="spec-list__value">
<a href="https://terafoundation.org/explorer.html" target="_blank">terafoundation.org</a>
</dd>
</div>
<div class="spec-list__item">
<dt class="spec-list__title">Platform</dt>
<dd class="spec-list__value">NodeJS</dd>
</div>
</dl>
</div>
<!-- /Row -->
@ -184,6 +186,282 @@
</div>
<!-- /Specification -->
<!-- Team -->
<div id="team" class="section md-padding" >
<h2 class="section-header text-center">
TERA PRODUCT TEAM
</h2>
<div class="container">
<div class="row">
<div class="col-md-4 col-lg-3 person-card">
<div class="person-card__wrapper">
<div class="person-card__img-wrap">
<img src="PIC/vtools.jpg" alt="Yuriy Ivanov photo" class="person-card__img" width="260" height="260">
</div>
<a href="https://www.linkedin.com/in/vtools/?locale=en_US" target="_blank">
<h4 class="person-card__title">Yuriy Ivanov <span>| Vtools</span></h4>
</a>
<p class="person-card__position"><!-- Head of Architect Department --></p>
<div class="person-card__add-info add-info">
<h4 class="add-info__name">Yuriy Ivanov</h4>
<em>Vtools</em>
<p class="add-info__position"><!-- Head of Architect Department --></p>
<p class="add-info__desc">
<!-- Moscow State University of Instrument Engineering and Computer Science, department of Computer Science and computer facilities. -->
</p>
<a href="https://www.linkedin.com/in/vtools/?locale=en_US" class="add-info__linkedin" target="_blank">
<img src="PIC/linkedin-logo.svg" alt="Linkedin logo" width="30" height="30">
<span>View profile</span>
</a>
</div>
</div>
</div>
<div class="col-md-4 col-lg-3 person-card">
<div class="person-card__wrapper">
<div class="person-card__img-wrap">
<img src="PIC/Gennady.jpg" alt="Gennady Ivanov photo" class="person-card__img" width="260" height="260">
</div>
<a href="https://www.linkedin.com/in/gennady-ivanov-195a8590/" target="_blank">
<h4 class="person-card__title">Gennady Ivanov <span>| Gennady</span></h4>
</a>
<p class="person-card__position"></p>
<div class="person-card__add-info add-info">
<h4 class="add-info__name">Gennady Ivanov</h4>
<em>Gennady</em>
<p class="add-info__position"></p>
<p class="add-info__desc"></p>
<a href="https://www.linkedin.com/in/gennady-ivanov-195a8590/" class="add-info__linkedin" target="_blank">
<img src="PIC/linkedin-logo.svg" alt="Linkedin logo" width="30" height="30">
<span>View profile</span>
</a>
</div>
</div>
</div>
<div class="col-md-4 col-lg-3 person-card">
<div class="person-card__wrapper">
<div class="person-card__img-wrap">
<img src="PIC/PsyArcus.jpg" alt="Evgeny Ustinovich photo" class="person-card__img" width="260" height="260">
</div>
<a href="https://www.linkedin.com/in/ustinovichevgeny/?locale=en_US" target="_blank">
<h4 class="person-card__title">Evgeny Ustinovich <span>| PsyArcus</span></h4>
</a>
<p class="person-card__position"></p>
<div class="person-card__add-info add-info">
<h4 class="add-info__name">Evgeny Ustinovich</h4>
<em>PsyArcus</em>
<p class="add-info__position"></p>
<p class="add-info__desc"></p>
<a href="https://www.linkedin.com/in/ustinovichevgeny/?locale=en_US" class="add-info__linkedin" target="_blank">
<img src="PIC/linkedin-logo.svg" alt="Linkedin logo" width="30" height="30">
<span>View profile</span>
</a>
</div>
</div>
</div>
<div class="col-md-4 col-lg-3 person-card">
<div class="person-card__wrapper">
<div class="person-card__img-wrap">
<img src="PIC/corey.jpg" alt="Yuan Chen photo" class="person-card__img" width="260" height="260">
</div>
<a href="https://www.linkedin.com/in/yuan-chen-331bbb145/" target="_blank">
<h4 class="person-card__title">Yuan Chen <span>| corey</span></h4>
</a>
<p class="person-card__position"></p>
<div class="person-card__add-info add-info">
<h4 class="add-info__name">Yuan Chen</h4>
<em>corey</em>
<p class="add-info__position"></p>
<p class="add-info__desc"></p>
<a href="https://www.linkedin.com/in/yuan-chen-331bbb145/" class="add-info__linkedin" target="_blank">
<img src="PIC/linkedin-logo.svg" alt="Linkedin logo" width="30" height="30">
<span>View profile</span>
</a>
</div>
</div>
</div>
<div class="col-md-4 col-lg-3 person-card">
<div class="person-card__wrapper">
<div class="person-card__img-wrap">
<img src="PIC/Ryuu.jpg" alt="Long Vu Hoang photo" class="person-card__img" width="260" height="260">
</div>
<a href="https://www.linkedin.com/in/long-vu-hoang-2a480a89/" target="_blank">
<h4 class="person-card__title">Long Vu Hoang <span>| Ryuu</span></h4>
</a>
<p class="person-card__position"></p>
<div class="person-card__add-info add-info">
<h4 class="add-info__name">Long Vu Hoang</h4>
<em>Ryuu</em>
<p class="add-info__position"></p>
<p class="add-info__desc"></p>
<a href="https://www.linkedin.com/in/long-vu-hoang-2a480a89/" class="add-info__linkedin" target="_blank">
<img src="PIC/linkedin-logo.svg" alt="Linkedin logo" width="30" height="30">
<span>View profile</span>
</a>
</div>
</div>
</div>
<div class="col-md-4 col-lg-3 person-card">
<div class="person-card__wrapper">
<div class="person-card__img-wrap">
<img src="PIC/mindsignals.jpg" alt="Ross Goldberg photo" class="person-card__img" width="260" height="260">
</div>
<a href="https://www.linkedin.com/in/ross-goldberg-5979bb/" target="_blank">
<h4 class="person-card__title">Ross Goldberg <span>| mindsignals</span></h4>
</a>
<p class="person-card__position"></p>
<div class="person-card__add-info add-info">
<h4 class="add-info__name">Ross Goldberg</h4>
<em>mindsignals</em>
<p class="add-info__position"></p>
<p class="add-info__desc"></p>
<a href="https://www.linkedin.com/in/ross-goldberg-5979bb/" class="add-info__linkedin" target="_blank">
<img src="PIC/linkedin-logo.svg" alt="Linkedin logo" width="30" height="30">
<span>View profile</span>
</a>
</div>
</div>
</div>
<div class="col-md-4 col-lg-3 person-card">
<div class="person-card__wrapper">
<div class="person-card__img-wrap">
<img src="PIC/itutu.jpg" alt="Wei Li photo" class="person-card__img" width="260" height="260">
</div>
<a href="https://www.linkedin.com/in/wei-li-5b8800182/" target="_blank">
<h4 class="person-card__title">Wei Li <span>| itutu</span></h4>
</a>
<p class="person-card__position"></p>
<div class="person-card__add-info add-info">
<h4 class="add-info__name">Wei Li</h4>
<em>itutu</em>
<p class="add-info__position"></p>
<p class="add-info__desc"></p>
<a href="https://www.linkedin.com/in/wei-li-5b8800182/" class="add-info__linkedin" target="_blank">
<img src="PIC/linkedin-logo.svg" alt="Linkedin logo" width="30" height="30">
<span>View profile</span>
</a>
</div>
</div>
</div>
<div class="col-md-4 col-lg-3 person-card">
<div class="person-card__wrapper">
<div class="person-card__img-wrap">
<img src="PIC/weiwutera.jpg" alt="Hongsang U photo" class="person-card__img" width="260" height="260">
</div>
<a href="https://www.linkedin.com/in/hongsang-u-18348616b/" target="_blank">
<h4 class="person-card__title">Hongsang U <span>| weiwutera</span></h4>
</a>
<p class="person-card__position"></p>
<div class="person-card__add-info add-info">
<h4 class="add-info__name">Hongsang U</h4>
<em>weiwutera</em>
<p class="add-info__position"></p>
<p class="add-info__desc"></p>
<a href="https://www.linkedin.com/in/hongsang-u-18348616b/" class="add-info__linkedin" target="_blank">
<img src="PIC/linkedin-logo.svg" alt="Linkedin logo" width="30" height="30">
<span>View profile</span>
</a>
</div>
</div>
</div>
<div class="col-md-4 col-lg-3 person-card">
<div class="person-card__wrapper">
<div class="person-card__img-wrap">
<img src="PIC/groboro.jpg" alt="Timo Stutz photo" class="person-card__img" width="260" height="260">
</div>
<a href="https://www.linkedin.com/in/timo-stutz/" target="_blank">
<h4 class="person-card__title">Timo Stutz <span>| groboro</span></h4>
</a>
<p class="person-card__position"></p>
<div class="person-card__add-info add-info">
<h4 class="add-info__name">Timo Stutz</h4>
<em>groboro</em>
<p class="add-info__position"></p>
<p class="add-info__desc"></p>
<a href="https://www.linkedin.com/in/timo-stutz/" class="add-info__linkedin" target="_blank">
<img src="PIC/linkedin-logo.svg" alt="Linkedin logo" width="30" height="30">
<span>View profile</span>
</a>
</div>
</div>
</div>
<div class="col-md-4 col-lg-3 person-card">
<div class="person-card__wrapper">
<div class="person-card__img-wrap">
<img src="PIC/Ken.jpg" alt="Ken Chan photo" class="person-card__img" width="260" height="260">
</div>
<a href="https://www.linkedin.com/in/ken-chan-170399183/" target="_blank">
<h4 class="person-card__title">Ken Chan <span>| Ken</span></h4>
</a>
<p class="person-card__position"></p>
<div class="person-card__add-info add-info">
<h4 class="add-info__name">Ken Chan</h4>
<em>Ken</em>
<p class="add-info__position"></p>
<p class="add-info__desc"></p>
<a href="https://www.linkedin.com/in/ken-chan-170399183/" class="add-info__linkedin" target="_blank">
<img src="PIC/linkedin-logo.svg" alt="Linkedin logo" width="30" height="30">
<span>View profile</span>
</a>
</div>
</div>
</div>
<div class="col-md-4 col-lg-3 person-card">
<div class="person-card__wrapper">
<div class="person-card__img-wrap">
<img src="PIC/tina629.jpg" alt="Ken Chan photo" class="person-card__img" width="260" height="260">
</div>
<a href="https://www.linkedin.com/in/xiu-zhao/" target="_blank">
<h4 class="person-card__title">Xiu Zhao <span>| tina629</span></h4>
</a>
<p class="person-card__position"></p>
<div class="person-card__add-info add-info">
<h4 class="add-info__name">Xiu Zhao</h4>
<em>tina629</em>
<p class="add-info__position"></p>
<p class="add-info__desc"></p>
<a href="https://www.linkedin.com/in/xiu-zhao/" class="add-info__linkedin" target="_blank">
<img src="PIC/linkedin-logo.svg" alt="Linkedin logo" width="30" height="30">
<span>View profile</span>
</a>
</div>
</div>
</div>
<div class="col-md-4 col-lg-3 person-card person-card--empty">
<div class="person-card__wrapper">
<div class="line-v"></div>
<div class="square-dot"></div>
</div>
</div>
</div>
</div>
</div>
<!-- /Team -->
<!-- News-->
<div id="lastnews" class="section md-padding bg-grey">
@ -194,12 +472,13 @@
<!-- Row -->
<div class="row">
<!-- Section header -->
<div class="no-more-tables">
{{Edit=./SITE/CONTENT/en-index-lastnews.md}}
<div class="col-xs-12">
<!-- Section header -->
<div class="no-more-tables">
{{Edit=./SITE/CONTENT/en-index-lastnews.md}}
</div>
</div>
</div>
</div>
</div>
<!-- /News-->
@ -237,7 +516,7 @@
<div class="row">
<!-- Section header -->
<div class="section-header">
<div class="section-header text-center">
<h2>Roadmap</h2>
</div>
<!-- /Section header -->
@ -432,4 +711,3 @@
</div></div>
{{File=./SITE/footer_index.html}}

View File

@ -165,7 +165,7 @@
<div class="col-md-6">
<div class="about bg-grey scheme-panel">
<h4>Traditional Blockchain</h4>
<h4><img src="../PIC/traditional_blockchain.png" title="Traditional Blockchain" /></h4>
<h4><img src="../PIC/traditional_blockchain.png" title="Traditional Blockchain" class="img img--100"/></h4>
</div>
</div>
<!-- /Key Feature -->
@ -174,7 +174,7 @@
<div class="col-md-6">
<div class="about bg-grey scheme-panel">
<h4>TERA Blockchain</h>
<p><img src="../PIC/tera_blockchain.png" title="TERA Blockchain" /></p>
<p><img src="../PIC/tera_blockchain.png" title="TERA Blockchain" class="img img--100"/></p>
</div>
</div>
<!-- /Key Feature -->
@ -285,58 +285,60 @@
<div class="row">
<!-- Section header -->
<div class="section-header">
<div class="section-header text-center">
<h2 class="title md-down-left">Технология</h2>
</div>
<!-- /Section header -->
<div class="no-more-tables">
<table class="table table-bordered">
<thead class="cf">
<tr>
<th>Максимальное наличие</th>
<th>Дата выпуска</th>
<th>Консенсусный протокол</th>
<th>Криптография</th>
<th>Язык смарт-контракта</th>
</tr>
</thead>
<tbody>
<tr>
<td>1,000,000,000</td>
<td>07.01.2018</td>
<td>POW</td>
<td>sha3, secp256k1</td>
<td>Javascript</td>
</tr>
</tbody>
</table>
<table class="table table-bordered">
<thead class="cf">
<tr>
<th>Размер блока</th>
<th>Pre-mine</th>
<th>Исходный код</th>
<th>Обозреватель</th>
<th>Платформа</th>
</tr>
</thead>
<tbody>
<tr>
<td>120 KB</td>
<td>5%</td>
<td>
<a href="https://sourceforge.net/p/tera/code/ci/master/tree/" target="_blank">sourceforge.net</a>,
<a href="https://gitlab.com/terafoundation/tera" target="_blank">gitlab.com</a>
</td>
<td>
<a href="https://terafoundation.org/explorer.html" target="_blank">terafoundation.org</a>
</td>
<td>NodeJS</td>
</tr>
</tbody>
</table>
</div>
<dl class="spec-list">
<div class="spec-list__item">
<dt class="spec-list__title">Максимальное наличие</dt>
<dd class="spec-list__value">1,000,000,000</dd>
</div>
<div class="spec-list__item">
<dt class="spec-list__title">Дата выпуска</dt>
<dd class="spec-list__value">07.01.2018</dd>
</div>
<div class="spec-list__item">
<dt class="spec-list__title">Консенсусный протокол</dt>
<dd class="spec-list__value">POW</dd>
</div>
<div class="spec-list__item">
<dt class="spec-list__title">Криптография</dt>
<dd class="spec-list__value">sha3, secp256k1</dd>
</div>
<div class="spec-list__item">
<dt class="spec-list__title">Язык смарт-контракта</dt>
<dd class="spec-list__value">JavaScript</dd>
</div>
<div class="spec-list__item">
<dt class="spec-list__title">Размер блока</dt>
<dd class="spec-list__value">130 KB</dd>
</div>
<div class="spec-list__item">
<dt class="spec-list__title">Pre-mine</dt>
<dd class="spec-list__value">5%</dd>
</div>
<div class="spec-list__item">
<dt class="spec-list__title">Исходный код</dt>
<dd class="spec-list__value">
<a href="https://sourceforge.net/p/tera/code/ci/master/tree/" target="_blank">sourceforge.net</a>,
<a href="https://gitlab.com/terafoundation/tera" target="_blank">gitlab.com</a>
</dd>
</div>
<div class="spec-list__item">
<dt class="spec-list__title">Обозреватель</dt>
<dd class="spec-list__value">
<a href="https://terafoundation.org/explorer.html" target="_blank">terafoundation.org</a>
</dd>
</div>
<div class="spec-list__item">
<dt class="spec-list__title">Платформа</dt>
<dd class="spec-list__value">NodeJS</dd>
</div>
</dl>
</div>
<!-- /Row -->
@ -356,8 +358,8 @@
<div class="row">
<!-- Section header -->
<div class="section-header">
<h2 class="title md-down-left">Обновления</h2>
<div class="section-header text-center">
<h2 class="title">Обновления</h2>
</div>
<!-- /Section header -->
<div class="no-more-tables">
@ -421,8 +423,8 @@
<div class="row">
<!-- Section header -->
<div class="section-header">
<h2 class="title md-down-left">Roadmap</h2>
<div class="section-header text-center">
<h2 class="title">Roadmap</h2>
</div>
<!-- /Section header -->
<div class="row flex wrap">
@ -536,8 +538,8 @@
<div class="row">
<!-- About Tera content -->
<div class="col-md-12">
<div class="section-header">
<h2 class="title md-down-left">ССЫЛКИ НА TERA</h2>
<div class="section-header text-center">
<h2 class="title">ССЫЛКИ НА TERA</h2>
</div>
<div class="col-md-4">
<div class="about bg-grey bl-panel">

View File

@ -239,7 +239,7 @@
<div class="section-header text-center">
{{Edit=./SITE/CONTENT/en-token-design-title.md}}
</div>
{{Edit=./SITE/CONTENT/en-token-design-text.md}}
<div class="col-xs-12" style="float: none;">{{Edit=./SITE/CONTENT/en-token-design-text.md}}</div>
<!-- /Section header -->
<!-- Coin Picture -->

View File

@ -20,7 +20,7 @@ global.START_LOAD_CODE = {};
const MAX_PERIOD_GETNODES = 120 * 1000;
global.MIN_PERIOD_PING = 4 * 1000;
const MAX_PERIOD_PING = 120 * 1000;
global.MAX_PING_FOR_CONNECT = 300;
global.MAX_PING_FOR_CONNECT = 400;
var MAX_TIME_CORRECT = 3 * 3600 * 1000;
global.MAX_WAIT_PERIOD_FOR_HOT = 4 * CONSENSUS_PERIOD_TIME;
const PERIOD_FOR_START_CHECK_TIME = 300;

View File

@ -8,15 +8,15 @@
* Telegram: https://t.me/terafoundation
*/
global.UPDATE_CODE_VERSION_NUM = 1020;
global.MIN_CODE_VERSION_NUM = 992;
global.UPDATE_CODE_VERSION_NUM = 1025;
global.MIN_CODE_VERSION_NUM = 1020;
global.MINING_VERSION_NUM = 3;
global.InitParamsArg = InitParamsArg;
global.CONST_NAME_ARR = ["AUTO_CORRECT_TIME", "DELTA_CURRENT_TIME", "COMMON_KEY", "NODES_NAME", "SERVER_PRIVATE_KEY_HEX", "USE_NET_FOR_SERVER_ADDRES",
"NET_WORK_MODE", "STAT_MODE", "MAX_STAT_PERIOD", "HTTP_PORT_NUMBER", "HTTP_PORT_PASSWORD", "HTTP_IP_CONNECT", "WALLET_NAME",
"WALLET_DESCRIPTION", "USE_HARD_API_V2", "COUNT_VIEW_ROWS", "USE_HINT", "ALL_VIEW_ROWS", "ALL_LOG_TO_CLIENT", "LOG_LEVEL",
"USE_MINING", "MINING_START_TIME", "MINING_PERIOD_TIME", "POW_MAX_PERCENT", "COUNT_MINING_CPU", "SIZE_MINING_MEMORY", "POW_RUN_COUNT",
"USE_AUTO_UPDATE", "RESTART_PERIOD_SEC", "MAX_GRAY_CONNECTIONS_TO_SERVER", "TRANSACTION_PROOF_COUNT", "UPDATE_NUM_COMPLETE",
"NET_WORK_MODE", "STAT_MODE", "MAX_STAT_PERIOD", "LISTEN_IP", "HTTP_PORT_NUMBER", "HTTP_PORT_PASSWORD", "HTTP_IP_CONNECT",
"WALLET_NAME", "WALLET_DESCRIPTION", "USE_HARD_API_V2", "COUNT_VIEW_ROWS", "USE_HINT", "ALL_VIEW_ROWS", "ALL_LOG_TO_CLIENT",
"LOG_LEVEL", "USE_MINING", "MINING_START_TIME", "MINING_PERIOD_TIME", "POW_MAX_PERCENT", "COUNT_MINING_CPU", "SIZE_MINING_MEMORY",
"POW_RUN_COUNT", "USE_AUTO_UPDATE", "RESTART_PERIOD_SEC", "MAX_GRAY_CONNECTIONS_TO_SERVER", "TRANSACTION_PROOF_COUNT", "UPDATE_NUM_COMPLETE",
"LIMIT_SEND_TRAFIC", "WATCHDOG_DEV", "ADDRLIST_MODE", "CheckPointDelta", "MIN_VER_STAT", "DEBUG_WALLET", "HTTP_HOSTING_PORT",
"HTTPS_HOSTING_DOMAIN", "HTTP_MAX_COUNT_ROWS", "HTTP_ADMIN_PASSORD", "WATCHDOG_BADACCOUNT", "RESYNC_CONDITION", "MAX_CONNECTIONS_COUNT",
"TRUST_PROCESS_COUNT", "REST_START_COUNT", "DB_VERSION", ];
@ -95,12 +95,12 @@ global.MAX_BLOCK_SIZE = 130 * 1024;
global.MAX_TRANSACTION_SIZE = 65535;
global.MIN_TRANSACTION_SIZE = 32;
global.MAX_TRANSACTION_COUNT = 2000;
global.MAX_TRANSACTION_LIMIT = 15;
global.MAX_TRANSACTION_LIMIT = 150;
global.MIN_POWER_POW_TR = 10;
if(global.MIN_POWER_POW_BL === undefined)
global.MIN_POWER_POW_BL = 5;
global.GENERATE_BLOCK_ACCOUNT = 0;
global.TOTAL_TER_MONEY = 1e9;
global.TOTAL_SUPPLY_TERA = 1e9;
global.TRANSACTION_PROOF_COUNT = 1000 * 1000;
global.MIN_POWER_POW_ACC_CREATE = 16;
global.START_MINING = 2 * 1000 * 1000;
@ -198,6 +198,8 @@ global.FIRST_TIME_BLOCK = START_NETWORK_DATE;
global.START_BLOCK_RUN = 0;
if(global.START_IP === undefined)
global.START_IP = "";
if(global.LISTEN_IP === undefined)
global.LISTEN_IP = "0.0.0.0";
if(global.START_PORT_NUMBER === undefined)
global.START_PORT_NUMBER = 30000;
if(global.HTTP_PORT_PASSWORD === undefined)
@ -252,57 +254,60 @@ function InitParamsArg()
if(str.substr(0, 3) == "IP:")
global.START_IP = str.substr(3);
else
if(str.substr(0, 8) == "HOSTING:")
{
global.HTTP_HOSTING_PORT = parseInt(str.substr(8));
}
if(str.substr(0, 7) == "LISTEN:")
global.LISTEN_IP = str.substr(7);
else
if(str.substr(0, 13) == "STARTNETWORK:")
if(str.substr(0, 8) == "HOSTING:")
{
global.START_NETWORK_DATE = parseInt(str.substr(13));
console.log("START_NETWORK_DATE: " + START_NETWORK_DATE);
global.HTTP_HOSTING_PORT = parseInt(str.substr(8));
}
else
{
switch(str)
if(str.substr(0, 13) == "STARTNETWORK:")
{
case "CHILDPOW":
global.CHILD_POW = true;
break;
case "ADDRLIST":
global.ADDRLIST_MODE = true;
break;
case "CREATEONSTART":
global.CREATE_ON_START = true;
break;
case "LOCALRUN":
global.LOCAL_RUN = 1;
break;
case "TESTRUN":
global.TEST_NETWORK = 1;
break;
case "NOLOCALRUN":
global.LOCAL_RUN = 0;
break;
case "NOAUTOUPDATE":
global.USE_AUTO_UPDATE = 0;
break;
case "NOPARAMJS":
global.USE_PARAM_JS = 0;
break;
case "READONLYDB":
global.READ_ONLY_DB = 1;
break;
case "NWMODE":
global.NWMODE = 1;
break;
case "NOALIVE":
global.NOALIVE = 1;
break;
case "DEV_MODE":
global.DEV_MODE = 1;
break;
global.START_NETWORK_DATE = parseInt(str.substr(13));
console.log("START_NETWORK_DATE: " + START_NETWORK_DATE);
}
else
{
switch(str)
{
case "CHILDPOW":
global.CHILD_POW = true;
break;
case "ADDRLIST":
global.ADDRLIST_MODE = true;
break;
case "CREATEONSTART":
global.CREATE_ON_START = true;
break;
case "LOCALRUN":
global.LOCAL_RUN = 1;
break;
case "TESTRUN":
global.TEST_NETWORK = 1;
break;
case "NOLOCALRUN":
global.LOCAL_RUN = 0;
break;
case "NOAUTOUPDATE":
global.USE_AUTO_UPDATE = 0;
break;
case "NOPARAMJS":
global.USE_PARAM_JS = 0;
break;
case "READONLYDB":
global.READ_ONLY_DB = 1;
break;
case "NWMODE":
global.NWMODE = 1;
break;
case "NOALIVE":
global.NOALIVE = 1;
break;
case "DEV_MODE":
global.DEV_MODE = 1;
break;
}
}
}
}
};

View File

@ -1727,10 +1727,10 @@ if(global.HTTP_PORT_NUMBER)
{
DoCommand(response, Type, Path, params, remoteAddress);
}
}).listen(port, function ()
}).listen(port, LISTEN_IP, function ()
{
global.HTTP_SERVER_START_OK = 1;
ToLog("Run HTTP-server on port:" + port);
ToLog("Run HTTP-server on " + LISTEN_IP + ":" + port);
});
HTTPServer.on('error', function (err)
{

View File

@ -435,7 +435,7 @@ module.exports = class CTransport extends require("./connect")
if(CompareArr(Hash, Meta.Hash) !== 0)
{
if(global.WATCHDOG_DEV)
TO_ERROR_LOG("TRANSPORT", 645, "Error hash Buffer")
ToLog("TRANSPORT", 645, "Error hash Buffer", 2)
return undefined;
}
if(Meta.TypeData === STR_TYPE)
@ -1090,8 +1090,8 @@ module.exports = class CTransport extends require("./connect")
START_PORT_NUMBER = 30000
let SELF = this;
SELF.port = START_PORT_NUMBER
ToLogClient("Prepare to run TCP server on port: " + SELF.port)
this.Server.listen(SELF.port, '0.0.0.0', function ()
ToLogClient("Prepare to run TCP server on " + LISTEN_IP + ":" + SELF.port)
this.Server.listen(SELF.port, LISTEN_IP, function ()
{
if(SELF.CanSend < 2)
ToLogClient("Run TCP server on " + SELF.ip + ":" + SELF.port)
@ -1104,7 +1104,7 @@ module.exports = class CTransport extends require("./connect")
FindInternetIP()
{
let SELF = this;
let server = Stun.createServer(this.Net4);
let server = Stun.createServer();
const request = Stun.createMessage(Stun.constants.STUN_BINDING_REQUEST);
server.on('error', function (err)
{

View File

@ -19,9 +19,9 @@ global.HistoryDB = new DBLib();
const FILE_NAME_HISTORY = "history-body";
var WorkStructHistory = {};
global.TYPE_TRANSACTION_CREATE = 100;
const TYPE_TRANSACTION_TRANSFER = 105;
const TYPE_TRANSACTION_TRANSFER2 = 110;
const TYPE_TRANSACTION_TRANSFER3 = 111;
const TYPE_DEPRECATED_TRANSFER1 = 105;
const TYPE_DEPRECATED_TRANSFER2 = 110;
const TYPE_TRANSACTION_TRANSFER = 111;
global.TYPE_TRANSACTION_ACC_HASH = 119;
global.FORMAT_CREATE = "{\
Type:byte,\
@ -200,10 +200,10 @@ class AccountApp extends require("./dapp")
this.DBAccountsHash.Truncate( - 1)
this.DBStateTX.Truncate( - 1)
this.DBRest.Truncate( - 1)
this._DBStateWrite({Num:0, PubKey:[], Value:{BlockNum:1, SumCOIN:0.95 * TOTAL_TER_MONEY}, Name:"System account"}, 1)
this._DBStateWrite({Num:0, PubKey:[], Value:{BlockNum:1, SumCOIN:0.95 * TOTAL_SUPPLY_TERA}, Name:"System account"}, 1)
for(var i = 1; i < 8; i++)
this._DBStateWrite({Num:i, PubKey:[], Value:{BlockNum:1}, Name:""})
this._DBStateWrite({Num:8, PubKey:GetArrFromHex(ARR_PUB_KEY[0]), Value:{BlockNum:1, SumCOIN:0.05 * TOTAL_TER_MONEY}, Name:"Founder account"})
this._DBStateWrite({Num:8, PubKey:GetArrFromHex(ARR_PUB_KEY[0]), Value:{BlockNum:1, SumCOIN:0.05 * TOTAL_SUPPLY_TERA}, Name:"Founder account"})
this._DBStateWrite({Num:9, PubKey:GetArrFromHex(ARR_PUB_KEY[1]), Value:{BlockNum:1, SumCOIN:0}, Name:"Developer account"})
for(var i = 10; i < BLOCK_PROCESSING_LENGTH2; i++)
this._DBStateWrite({Num:i, PubKey:GetArrFromHex(ARR_PUB_KEY[i - 8]), Value:{BlockNum:1}, Name:""})
@ -377,17 +377,17 @@ class AccountApp extends require("./dapp")
Result = this.TRCreateAccount(Body, BlockNum, TrNum, ContextFrom)
break;
}
case TYPE_TRANSACTION_TRANSFER:
case TYPE_DEPRECATED_TRANSFER1:
{
Result = this.TRTransferMoney(Block, Body, BlockNum, TrNum, FORMAT_MONEY_TRANSFER, WorkStructTransfer)
break;
}
case TYPE_TRANSACTION_TRANSFER2:
case TYPE_DEPRECATED_TRANSFER2:
{
Result = this.TRTransferMoney(Block, Body, BlockNum, TrNum, FORMAT_MONEY_TRANSFER2, WorkStructTransfer2)
break;
}
case TYPE_TRANSACTION_TRANSFER3:
case TYPE_TRANSACTION_TRANSFER:
{
Result = this.TRTransferMoney(Block, Body, BlockNum, TrNum, FORMAT_MONEY_TRANSFER3, WorkStructTransfer3)
break;
@ -433,7 +433,7 @@ class AccountApp extends require("./dapp")
var Power = GetPowPower(Block.PowHash);
if(Block.BlockNum >= NEW_BLOCK_REWARD1)
Power = 43
var Sum = Power * Power * SysBalance / TOTAL_TER_MONEY / 100;
var Sum = Power * Power * SysBalance / TOTAL_SUPPLY_TERA / 100;
var CoinTotal = {SumCOIN:0, SumCENT:0};
var CoinSum = COIN_FROM_FLOAT(Sum);
if(!ISZERO(CoinSum))
@ -482,17 +482,17 @@ class AccountApp extends require("./dapp")
format = FORMAT_CREATE
break;
}
case TYPE_TRANSACTION_TRANSFER:
case TYPE_DEPRECATED_TRANSFER1:
{
format = FORMAT_MONEY_TRANSFER
break;
}
case TYPE_TRANSACTION_TRANSFER2:
case TYPE_DEPRECATED_TRANSFER2:
{
format = FORMAT_MONEY_TRANSFER2
break;
}
case TYPE_TRANSACTION_TRANSFER3:
case TYPE_TRANSACTION_TRANSFER:
{
format = FORMAT_MONEY_TRANSFER3
break;
@ -1533,7 +1533,7 @@ module.exports = AccountApp;
var App = new AccountApp;
DApps["Accounts"] = App;
DAppByType[TYPE_TRANSACTION_CREATE] = App;
DAppByType[TYPE_DEPRECATED_TRANSFER1] = App;
DAppByType[TYPE_DEPRECATED_TRANSFER2] = App;
DAppByType[TYPE_TRANSACTION_TRANSFER] = App;
DAppByType[TYPE_TRANSACTION_TRANSFER2] = App;
DAppByType[TYPE_TRANSACTION_TRANSFER3] = App;
DAppByType[TYPE_TRANSACTION_ACC_HASH] = App;

View File

@ -282,10 +282,10 @@ function RunListenServer()
ToError(err);
});
ToLogClient("Prepare to run WEB-server on port: " + global.HTTP_HOSTING_PORT);
HostingServer.listen(global.HTTP_HOSTING_PORT, '0.0.0.0', function ()
HostingServer.listen(global.HTTP_HOSTING_PORT, LISTEN_IP, function ()
{
if(!bWasRun)
ToLogClient("Run WEB-server on port: " + global.HTTP_HOSTING_PORT);
ToLogClient("Run WEB-server on " + LISTEN_IP + ":" + global.HTTP_HOSTING_PORT);
bWasRun = 1;
});
};
@ -295,6 +295,7 @@ LangPathMap["cn"] = 1;
LangPathMap["de"] = 1;
LangPathMap["blog"] = 1;
LangPathMap["docs"] = 1;
LangPathMap["game"] = 1;
var WalletFileMap = {};
WalletFileMap["coinlib.js"] = 1;
WalletFileMap["client.js"] = 1;
@ -318,6 +319,7 @@ WalletFileMap["history.html"] = 1;
WalletFileMap["blockviewer.html"] = 1;
WalletFileMap["web-wallet.html"] = 1;
WalletFileMap["web-wallet-cn.html"] = 1;
WalletFileMap["address_book.png"] = 1;
global.WebApi2 = {};
global.HostingCaller = {};