import hardcorepawn.opengl.*; import java.nio.*; //import processing.opengl.*; import javax.media.opengl.*; String[] mapLines; map m; typeManager tm; int xp,yp,mx,my; int zoom; boolean mp; boolean zo,zi; keys k; boolean mousedragged=false; boolean HEIGHTMAP=false; float a; float[] verticies; int[] indexes; FloatBuffer f,fn; GL gl; void setup() { size(800,600,"hardcorepawn.opengl.PGraphicsGL"); gl=((PGraphicsGL)g).gl; xp=50; yp=50; mx=50; my=50; zoom=50; a=0; mp=false; zo=false; zi=false; k=new keys(); m=new map(400,400,100,100); println("loading square types"); String[] tmp=loadStrings("types.txt"); tm=new typeManager(); for(int i=0;i=0 && mouseX<400 && mouseY>=0 && mouseY<400) { if(mouseX+w+4<400) { rect(mouseX+5,mouseY+5,(w+4),18); fill(0,0,0,180); text(name,mouseX+7,mouseY+19); } else if(mouseX<400) { rect(mouseX-5,mouseY+5,-(w+4),18); fill(0,0,0,180); text(name,mouseX-7-w,mouseY+19); } } drawUI(); if(mp==true) { if(mouseX<400 && mouseX>=0 && mouseY<400 && mouseY>=0) { xp=mx; yp=my; mp=false; } //UI will have caught mouse already if it can use it } */ /* need to keep better track of historic changes... if(mousedragged) { float dx=mouseX-pmouseX; float dy=mouseY-pmouseY; float sqSize=400/(zoom*2.0); float mx=dx/sqSize; float my=dy/sqSize; xp-=(int)mx; yp+=(int)my; mousedragged=false; }*/ /* if(k.pressed('z')==true || k.pressed('Z')==true) { if(zoom>8) zoom-=2; k.release('z'); k.release('Z'); } if(k.pressed('x') || k.pressed('X')) { zoom+=2; k.release('x'); k.release('X'); } */ } void mousePressed() { mp=true; } void mouseReleased() { mp=false; } void mouseDragged() { mousedragged=true; }