private void setImageField(String str1, String str2, String str3) {
		int lb = str1.indexOf("[");
		int rb = str1.indexOf("]");
		double z = parseMathExpression(str1.substring(lb + 1, rb));
		if (Double.isNaN(z))
			return;
		int i = (int) Math.round(z);
		ImageComponent[] ic = view.getImages();
		if (i < 0 || i >= ic.length) {
			out(ScriptEvent.FAILED, "Image " + i + " doesn't exisit.");
			return;
		}
		String s = str2.toLowerCase().intern();
		boolean b = true;
		if (s == "visible")
			ic[i].setVisible("on".equalsIgnoreCase(str3));
		else if (s == "draggable")
			ic[i].setDraggable("on".equalsIgnoreCase(str3));
		else if (s == "custom") {
			double x = parseMathExpression(str3);
			if (!Double.isNaN(x))
				ic[i].custom = (float) x;
		} else if (s == "x") {
			double x = parseMathExpression(str3);
			if (!Double.isNaN(x))
				ic[i].translateTo(x * IR_CONVERTER, ic[i].getRy());
		} else if (s == "y") {
			double x = parseMathExpression(str3);
			if (!Double.isNaN(x))
				ic[i].translateTo(ic[i].getRx(), x * IR_CONVERTER);
		} else if (s == "angle") {
			double x = parseMathExpression(str3);
			if (!Double.isNaN(x))
				ic[i].setAngle((float) Math.toRadians(x));
		} else if (s == "frame") {
			double x = parseMathExpression(str3);
			if (!Double.isNaN(x))
				ic[i].setCurrentFrame((int) Math.round(x));
		} else if (s == "loop") {
			double x = parseMathExpression(str3);
			if (!Double.isNaN(x))
				ic[i].setLoopCount((int) Math.round(x));
		} else if (s == "layer") {
			if ("in_front_of_particles".equalsIgnoreCase(str3)) {
				ic[i].setLayer(Layered.IN_FRONT_OF_PARTICLES);
			} else if ("behind_particles".equalsIgnoreCase(str3)) {
				ic[i].setLayer(Layered.BEHIND_PARTICLES);
			} else if ("back".equalsIgnoreCase(str3)) {
				view.sendLayerToBack(ic[i]);
			} else if ("front".equalsIgnoreCase(str3)) {
				view.bringLayerToFront(ic[i]);
			}
		} else {
			out(ScriptEvent.FAILED, "Cannot set property: " + str2);
			b = false;
		}
		if (b) {
			view.repaint();
			notifyChange();
		}
	}