summaryrefslogtreecommitdiff
path: root/NET/worlds/scape/Toggle.java
diff options
context:
space:
mode:
authorFuwn <[email protected]>2021-05-03 16:38:41 -0700
committerFuwn <[email protected]>2021-05-03 16:38:41 -0700
commite1e781bb2135ef78592226f1a3eaba4925702f1f (patch)
tree8a5b590463ed413e1c6eabb719130e701b95ca63 /NET/worlds/scape/Toggle.java
downloadworlds.jar-e1e781bb2135ef78592226f1a3eaba4925702f1f.tar.xz
worlds.jar-e1e781bb2135ef78592226f1a3eaba4925702f1f.zip
:star:HEADmain
Diffstat (limited to 'NET/worlds/scape/Toggle.java')
-rw-r--r--NET/worlds/scape/Toggle.java209
1 files changed, 209 insertions, 0 deletions
diff --git a/NET/worlds/scape/Toggle.java b/NET/worlds/scape/Toggle.java
new file mode 100644
index 0000000..1866b2d
--- /dev/null
+++ b/NET/worlds/scape/Toggle.java
@@ -0,0 +1,209 @@
+/* */ package NET.worlds.scape;
+/* */
+/* */ import NET.worlds.console.Console;
+/* */ import java.io.IOException;
+/* */ import java.text.MessageFormat;
+/* */
+/* */
+/* */
+/* */
+/* */
+/* */
+/* */
+/* */
+/* */
+/* */
+/* */
+/* */
+/* */ public class Toggle
+/* */ extends TriggeredSwitchableBehavior
+/* */ implements Persister, FrameHandler, MouseDownHandler, BumpHandler
+/* */ {
+/* */ protected boolean toggleBumpable;
+/* */ protected boolean toggleVisible;
+/* */ protected WObject o;
+/* 25 */ protected boolean initialized = false;
+/* */
+/* */ public Toggle()
+/* */ {
+/* 29 */ this.trigger = new String("none");
+/* 30 */ this.externalTriggerTag = new String("");
+/* 31 */ this.toggleBumpable = true;
+/* 32 */ this.toggleVisible = true;
+/* */ }
+/* */
+/* */
+/* */
+/* */
+/* */
+/* */ public void ExternalTrigger(Trigger trigger_source, int sequence_no, int event_no)
+/* */ {
+/* 41 */ this.trigger_source = trigger_source;
+/* 42 */ this.sequence_no = sequence_no;
+/* 43 */ this.event_no = event_no;
+/* 44 */ toggle();
+/* */ }
+/* */
+/* */
+/* */
+/* */
+/* */ public void toggle()
+/* */ {
+/* 52 */ if (this.toggleBumpable) {
+/* 53 */ this.o.setBumpable(true);
+/* */ } else {
+/* 55 */ this.o.setBumpable(false);
+/* */ }
+/* 57 */ if (this.toggleVisible) {
+/* 58 */ this.o.setVisible(true);
+/* */ } else {
+/* 60 */ this.o.setVisible(false);
+/* */ }
+/* 62 */ if (this.trigger_source != null) {
+/* 63 */ this.trigger_source.registerFinishedTriggerTag(this.sequence_no, this.event_no);
+/* */ }
+/* */ }
+/* */
+/* */
+/* */ public boolean handle(FrameEvent e)
+/* */ {
+/* 70 */ if (!this.initialized) {
+/* 71 */ this.o = e.receiver;
+/* 72 */ this.initialized = true;
+/* */ }
+/* 74 */ return true;
+/* */ }
+/* */
+/* */
+/* */ public boolean handle(MouseDownEvent e)
+/* */ {
+/* 80 */ if ((this.enabled) &&
+/* 81 */ (this.trigger.equals("click"))) {
+/* 82 */ toggle();
+/* */ }
+/* */
+/* 85 */ return true;
+/* */ }
+/* */
+/* */ public boolean handle(BumpEventTemp e)
+/* */ {
+/* 90 */ if ((this.enabled) &&
+/* 91 */ (this.trigger.equals("bump"))) {
+/* 92 */ toggle();
+/* */ }
+/* */
+/* 95 */ return true;
+/* */ }
+/* */
+/* */
+/* */
+/* */
+/* */ public Object properties(int index, int offset, int mode, Object value)
+/* */ throws NoSuchPropertyException
+/* */ {
+/* 104 */ Object ret = null;
+/* 105 */ switch (index - offset) {
+/* */ case 0:
+/* 107 */ if (mode == 0) {
+/* 108 */ ret = StringPropertyEditor.make(
+/* 109 */ new Property(this, index, "Trigger"));
+/* 110 */ } else if (mode == 1) {
+/* 111 */ ret = new String(this.trigger);
+/* 112 */ } else if (mode == 2) {
+/* 113 */ this.trigger = ((String)value).toString().trim();
+/* 114 */ if (this.trigger.equals("external")) {
+/* 115 */ Trigger.TriggeredSwitchableBehaviorList[
+/* 116 */ Trigger.TriggeredSwitchableBehaviorListCount] = this;
+/* 117 */ Trigger.TriggeredSwitchableBehaviorListCount += 1;
+/* */ }
+/* */ }
+/* */
+/* 121 */ break;
+/* */ case 1:
+/* 123 */ if (mode == 0) {
+/* 124 */ ret = StringPropertyEditor.make(
+/* 125 */ new Property(this, index, "External Trigger Tag"));
+/* 126 */ } else if (mode == 1) {
+/* 127 */ ret = new String(this.externalTriggerTag);
+/* 128 */ } else if (mode == 2) {
+/* 129 */ this.externalTriggerTag = ((String)value).toString().trim();
+/* */ }
+/* 131 */ break;
+/* */ case 2:
+/* 133 */ if (mode == 0) {
+/* 134 */ ret = BooleanPropertyEditor.make(
+/* 135 */ new Property(this, index, "Toggle Bumpable"),
+/* 136 */ "No", "Yes");
+/* 137 */ } else if (mode == 1) {
+/* 138 */ ret = new Boolean(this.toggleBumpable);
+/* 139 */ } else if (mode == 2)
+/* 140 */ this.toggleBumpable = ((Boolean)value).booleanValue();
+/* 141 */ break;
+/* */ case 3:
+/* 143 */ if (mode == 0) {
+/* 144 */ ret = BooleanPropertyEditor.make(
+/* 145 */ new Property(this, index, "Toggle Visible"),
+/* 146 */ "No", "Yes");
+/* 147 */ } else if (mode == 1) {
+/* 148 */ ret = new Boolean(this.toggleVisible);
+/* 149 */ } else if (mode == 2)
+/* 150 */ this.toggleVisible = ((Boolean)value).booleanValue();
+/* 151 */ break;
+/* */ default:
+/* 153 */ ret = super.properties(index, offset + 4, mode, value);
+/* */ }
+/* 155 */ return ret;
+/* */ }
+/* */
+/* */ public String toString()
+/* */ {
+/* 160 */ return
+/* 161 */ super.toString() + "[" + " enabled " + this.enabled + ", trigger " + this.trigger + ", externalTriggerTag " + this.externalTriggerTag + "]";
+/* */ }
+/* */
+/* */ public void saveState(Saver s)
+/* */ throws IOException
+/* */ {
+/* 167 */ s.saveString(this.trigger);
+/* 168 */ s.saveString(this.externalTriggerTag);
+/* 169 */ s.saveBoolean(this.toggleBumpable);
+/* 170 */ s.saveBoolean(this.toggleVisible);
+/* */ }
+/* */
+/* */ public void restoreState(Restorer r)
+/* */ throws IOException
+/* */ {
+/* 176 */ this.trigger = r.restoreString();
+/* 177 */ if (this.trigger.equals("external")) {
+/* 178 */ Trigger.TriggeredSwitchableBehaviorList[
+/* 179 */ Trigger.TriggeredSwitchableBehaviorListCount] = this;
+/* 180 */ Trigger.TriggeredSwitchableBehaviorListCount += 1;
+/* */ }
+/* 182 */ this.externalTriggerTag = r.restoreString();
+/* 183 */ this.toggleBumpable = r.restoreBoolean();
+/* 184 */ this.toggleVisible = r.restoreBoolean();
+/* */ }
+/* */
+/* */
+/* */
+/* */ public void postRestore(int version)
+/* */ {
+/* 191 */ String name = getName();
+/* 192 */ String arg1 = name == null ? "<null>" : name;
+/* 193 */ SuperRoot owner = getOwner();
+/* 194 */ String oname = "";
+/* 195 */ if (owner != null) {
+/* 196 */ oname = owner.getName();
+/* */ }
+/* 198 */ String arg2 = oname == null ? "<null>" : oname;
+/* 199 */ Object[] arguments = { new String(arg1), new String(arg2) };
+/* 200 */ Console.println(MessageFormat.format(
+/* 201 */ Console.message("Toggle-obs"), arguments));
+/* */ }
+/* */ }
+
+
+/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\scape\Toggle.class
+ * Java compiler version: 6 (50.0)
+ * JD-Core Version: 0.7.1
+ */ \ No newline at end of file