From 1816088e6a6cc71934ab1e82fbaa12f026eb17e1 Mon Sep 17 00:00:00 2001
From: Normand Briere <nbriere@noware.ca>
Date: Sun, 17 Nov 2019 11:44:50 -0500
Subject: [PATCH] Min texture (128) + arrows.

---
 CameraPane.java |  177 ++++++++++++++++++++++++++++++++++++++--------------------
 1 files changed, 115 insertions(+), 62 deletions(-)

diff --git a/CameraPane.java b/CameraPane.java
index 20abe52..472bc2f 100644
--- a/CameraPane.java
+++ b/CameraPane.java
@@ -50,10 +50,12 @@
     
     static int STEP = 1;
 
+    //static int[] pixels = new int[10000000];
+        
     private static BufferedImage CreateBim(byte[] bytes, int width, int height)
     {
         int[] pixels = new int[bytes.length/3];
-        for (int i=pixels.length; --i>=0;)
+        for (int i=bytes.length/3; --i>=0;)
         {
             int i3 = i*3;
             pixels[i] = 0xFF;
@@ -3859,12 +3861,13 @@
         
         switch (resolution)
         {
-            case 0: restarget = 256*256; break;
-            case 1: restarget = 512*512; break;
-            case 2: restarget = 1024*1024; break;
-            case 3: restarget = 2048*2048; break;
-            case 4: restarget = 4096*4096; break;
-            case 5: restarget = 8192*8192; break;
+            case 0: restarget = 128*128; break;
+            case 1: restarget = 256*256; break;
+            case 2: restarget = 512*512; break;
+            case 3: restarget = 1024*1024; break;
+            case 4: restarget = 2048*2048; break;
+            case 5: restarget = 4096*4096; break;
+            case 6: restarget = 8192*8192; break;
         }
         
 //        restarget = 512*512; // 512*512; // 2048; // 512; // 1024;
@@ -10892,61 +10895,64 @@
             {
                 //pingthread.mute = true;
         
-                boolean keyon = false;
-                
-                if (keys[DOWN_ARROW])
+                if (capsLocked)
                 {
-                    speed = ++speedkey[DOWN_ARROW];
-                    if (speed > 20)
-                        speed = 20;
-                    GoDown(modifiers);
-                    keyon = true;
-                }
-                else
-                    speedkey[DOWN_ARROW] = 0;
+                    boolean keyon = false;
 
-                if (keys[UP_ARROW])
-                {
-                    speed = ++speedkey[UP_ARROW];
-                    if (speed > 20)
-                        speed = 20;
-                    GoUp(modifiers);
-                    keyon = true;
-                }
-                else
-                    speedkey[UP_ARROW] = 0;
+                    if (keys[DOWN_ARROW])
+                    {
+                        speed = ++speedkey[DOWN_ARROW];
+                        if (speed > 20)
+                            speed = 20;
+                        GoDown(modifiers);
+                        keyon = true;
+                    }
+                    else
+                        speedkey[DOWN_ARROW] = 0;
 
-                if (keys[LEFT_ARROW])
-                {
-                    speed = ++speedkey[LEFT_ARROW];
-                    if (speed > 20)
-                        speed = 20;
-                    GoLeft(modifiers);
-                    keyon = true;
-                }
-                else 
-                    speedkey[LEFT_ARROW] = 0;
+                    if (keys[UP_ARROW])
+                    {
+                        speed = ++speedkey[UP_ARROW];
+                        if (speed > 20)
+                            speed = 20;
+                        GoUp(modifiers);
+                        keyon = true;
+                    }
+                    else
+                        speedkey[UP_ARROW] = 0;
 
-                if (keys[RIGHT_ARROW])
-                {
-                    speed = ++speedkey[RIGHT_ARROW];
-                    if (speed > 20)
-                        speed = 20;
-                    GoRight(modifiers);
-                    keyon = true;
-                }
-                else
-                    speedkey[RIGHT_ARROW] = 0;
-                
-                if (Globals.WALK && capsLocked)
-                {
-                    Walk();
-                    keyon = true;
-                }
-                
-                if (keyon)
-                {
-                    repaint();
+                    if (keys[LEFT_ARROW])
+                    {
+                        speed = ++speedkey[LEFT_ARROW];
+                        if (speed > 20)
+                            speed = 20;
+                        GoLeft(modifiers);
+                        keyon = true;
+                    }
+                    else 
+                        speedkey[LEFT_ARROW] = 0;
+
+                    if (keys[RIGHT_ARROW])
+                    {
+                        speed = ++speedkey[RIGHT_ARROW];
+                        if (speed > 20)
+                            speed = 20;
+                        GoRight(modifiers);
+                        keyon = true;
+                    }
+                    else
+                        speedkey[RIGHT_ARROW] = 0;
+
+                    if (Globals.WALK)
+                    {
+                        Walk();
+                        keyon = true;
+                    }
+
+                    if (keyon)
+                    {
+                        repaint();
+                    }
                 }
                 
                 //pingthread.mute = false;
@@ -15033,6 +15039,11 @@
         LA.vecSub(manipCamera.location, manipCamera.lookAt, manipCamera.direction);
         float scale = (float)manipCamera.direction.length() / 10;
         
+        if (!capsLocked)
+        {
+            scale = 50;
+        }
+
         MODIFIERS |= COMMAND;
         boolean isVR = (mouseMode&VR)!=0;
         /**/
@@ -15074,6 +15085,11 @@
         LA.vecSub(manipCamera.location, manipCamera.lookAt, manipCamera.direction);
         float scale = (float)manipCamera.direction.length() / 10;
         
+        if (!capsLocked)
+        {
+            scale = 50;
+        }
+
                 RigidBody.justclicked = true;
         
         MODIFIERS |= COMMAND;
@@ -15118,6 +15134,11 @@
         LA.vecSub(manipCamera.location, manipCamera.lookAt, manipCamera.direction);
         float scale = (float)manipCamera.direction.length() / 10;
         
+        if (!capsLocked)
+        {
+            scale = 50;
+        }
+
         MODIFIERS |= COMMAND;
         /**/
         if((mod&SHIFT) == SHIFT)
@@ -15153,6 +15174,11 @@
         LA.vecSub(manipCamera.location, manipCamera.lookAt, manipCamera.direction);
         float scale = (float)manipCamera.direction.length() / 10;
         
+        if (!capsLocked)
+        {
+            scale = 50;
+        }
+
         MODIFIERS |= COMMAND;
         /**/
         if((mod&SHIFT) == SHIFT)
@@ -16151,10 +16177,37 @@
         switch (e.getID())
         {
             case KeyEvent.KEY_PRESSED:
-                keys[e.getKeyCode()] = true;
-                modifiers = e.getModifiersEx();
-                keyPressed(e.getKeyChar(), modifiers);
-                //Globals.theRenderer.keyPressed(e.getKeyChar());
+                
+                if (capsLocked)
+                {
+                    keys[e.getKeyCode()] = true;
+                    modifiers = e.getModifiersEx();
+                    keyPressed(e.getKeyChar(), modifiers);
+                    //Globals.theRenderer.keyPressed(e.getKeyChar());
+                }
+                else
+                {
+                    switch (e.getKeyCode())
+                    {
+                        case DOWN_ARROW:
+                            GoDown(e.getModifiersEx());
+                            break;
+                        case UP_ARROW:
+                            GoUp(e.getModifiersEx());
+                            break;
+                        case LEFT_ARROW:
+                            GoLeft(e.getModifiersEx());
+                            break;
+                        case RIGHT_ARROW:
+                            GoRight(e.getModifiersEx());
+                            break;
+                        default:
+                            modifiers = e.getModifiersEx();
+                            keyPressed(e.getKeyChar(), modifiers);
+                            break;
+                    }
+                }
+                
                 repaint();
                 break;
 //                if (!autorepeat)

--
Gitblit v1.6.2