2007-2-20 19:33
Miliardo
[原创]可点击地图领域图像颜色索引浏览器
从Krkr自带的图形浏览器修改而来,希望对大家有用。
[code]
//Clickable Map Viewer for Kirikiri Adventure Game 3
//Modified by Miliardo from Graphics Viewer in TVP2's Samples
//Copyright (C) 1997-2006 W.Dee and contributors
//Copyright (C) 2001-2007 Whitefang Studio
class MyWindow extends Window
{
var primlayer;
var graphlayer;
var checkers;
var filemenu;
var exitmenu;
var provmenu;
function MyWindow()
{
super.Window();
menu.add(filemenu = new MenuItem(this, "文件(&F)"));
filemenu.add(exitmenu = new MenuItem(this, "退出(&X)"));
menu.add(provmenu = new MenuItem(this, "请拖动图像"));
add(primlayer = new Layer(this, null));
primlayer.left = primlayer.top = 0;
primlayer.imageWidth = 400;
primlayer.imageHeight = 70;
primlayer.setSizeToImageSize();
setInnerSize(primlayer.width, primlayer.height);
// 图像
add(graphlayer = new Layer(this, primlayer));
graphlayer.width = primlayer.width;
graphlayer.height = primlayer.height;
graphlayer.setPos(0, 0);
graphlayer.visible = true;
graphlayer.font.height = 18;
graphlayer.drawText(10, 10, "请将图像拖动到本窗口。",
0xff0000, 255, true, 200, 0x000000, 3, 2, 2);
add(checkers = new Layer(this, primlayer));
checkers.type = ltCoverRect;
checkers.face = dfMain;
checkers.imageWidth = 320;
checkers.imageHeight = 320;
for(var y = 0; y<320; y+=8)
for(var x = 0; x<320; x+=8)
checkers.colorRect(x, y, 8, 8, ((x^y)&0b1000)?0xc0c0c0:0x808080, 255);
visible = true;
System.title = "Clickable Map Viewer";
super.caption = "Clickable Map Viewer";
}
function loadImage(file)
{
try
{
var start = System.getTickCount();
var dic = graphlayer.loadImages(file);
Debug.message((System.getTickCount() - start) + " ms");
graphlayer.type = ltAlpha;
if(dic)
{
var ar = [];
ar.assign(dic);
for(var i = 0; i < ar.count; i+= 2)
Debug.message(ar[i] + '=' + ar[i+1]);
if(dic.mode !== void)
{
var layertypeinfo = imageTagLayerType[dic.mode];
if(layertypeinfo !== void)
graphlayer.type = layertypeinfo.type;
}
}
}
catch(e)
{
System.inform("无法读取图像 : " + e.message);
}
graphlayer.setSizeToImageSize();
setInnerSize(graphlayer.width, graphlayer.height);
primlayer.setImageSize(graphlayer.imageWidth, graphlayer.imageHeight);
primlayer.setSizeToImageSize();
for(var y = 0; y<primlayer.height; y += 320)
for(var x = 0; x<primlayer.width; x += 320)
primlayer.copyRect(x, y, checkers, 0, 0, 320, 320);
}
function action(ev)
{
if(ev.type == "onFileDrop" && ev.target == this)
{
loadImage(ev.files[0]);
graphlayer.loadProvinceImage(ev.files[0]);
}
else if(ev.type == "onClick" && ev.target == exitmenu)
{
close();
}
else if(ev.type == "onClick" && ev.target == graphlayer)
{
provmenu.caption = "你所点击的颜色的领域值为:"+graphlayer.getProvincePixel(ev.x,ev.y);
}
}
}
var win = new MyWindow();
[/code]
EXE版本下载:
[url]http://nw.keyfc.net/kcddpp/CMapViewer.rar[/url]
2007-2-22 16:12
風籠兒
拉了一張上面只有紅、綠兩方格的png圖上去,結果…不知道發生什麼問題呢…可以解說一下嗎?
16:07:14 (info) Loading options from embedded area...
16:07:14 吉里吉里[Kirikiri] 2 执行内核/2.28.1.9906 (Compiled on Jan 1 2007 18:46:50) TJS2/2.4.21 Copyright (C) 1997-2006 W.Dee and contributors All rights reserved.
16:07:14 版本情报详细可以按 Ctrl + F12 详细阅览
16:07:14 Program started on Windows NT 5.1.2600 Service Pack 2 (Win32)
16:07:14 (info) Rebuilding Auto Path Table ...
16:07:14 (info) Total 0 file(s) found, 0 file(s) activated. (0ms)
16:07:14 (info) Total physical memory : 402112512
16:07:14 (info) Selected project directory : file://./c/documents and settings/administrator/desktop/cmapviewer/cmapviewer.exe>
16:07:14 (info) CPU #0 : FPU:yes MMX:yes 3DN:yes SSE:yes CMOVcc:yes E3DN:yes EMMX:yes SSE2:no TSC:yes AMD(AuthenticAMD) [AMD Duron(tm) processor] CPUID(1)/EAX=00000671 CPUID(1)/EBX=00000000
16:07:14 (info) finally detected CPU features : FPU:yes MMX:yes 3DN:yes SSE:yes CMOVcc:yes E3DN:yes EMMX:yes SSE2:no TSC:yes
16:07:14 (info) Specified option(s) : -logerror=clear -debugwin=no
16:07:14 (info) Loading startup script : startup.tjs
16:07:14 (info) Trying to read XP3 virtual file system information from : file://./c/documents and settings/administrator/desktop/cmapviewer/cmapviewer.exe
16:07:14 (info) Done. (contains 1 file(s), 1 segment(s))
16:07:14 (info) Startup script ended.
16:07:15 (info) CPU clock (roughly) : 1310MHz
16:07:35 (info) CPU clock : 1299.3MHz
16:07:50 (info) Rebuilding Auto Path Table ...
16:07:50 (info) Total 0 file(s) found, 0 file(s) activated. (10ms)
16:07:50 20 ms
16:07:50 脚本中发生例外
EAccessViolation