001 /* 002 * Copyright 2004 The Apache Software Foundation 003 * 004 * Licensed under the Apache License, Version 2.0 (the "License"); 005 * you may not use this file except in compliance with the License. 006 * You may obtain a copy of the License at 007 * 008 * http://www.apache.org/licenses/LICENSE-2.0 009 * 010 * Unless required by applicable law or agreed to in writing, software 011 * distributed under the License is distributed on an "AS IS" BASIS, 012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 013 * See the License for the specific language governing permissions and 014 * limitations under the License. 015 */ 016 package colors; 017 018 import javax.servlet.http.*; 019 020 public class ColorGameBean { 021 022 private String background = "yellow"; 023 private String foreground = "red"; 024 private String color1 = foreground; 025 private String color2 = background; 026 private String hint = "no"; 027 private int attempts = 0; 028 private int intval = 0; 029 private boolean tookHints = false; 030 031 public void processRequest(HttpServletRequest request) { 032 033 // background = "yellow"; 034 // foreground = "red"; 035 036 if (! color1.equals(foreground)) { 037 if (color1.equalsIgnoreCase("black") || 038 color1.equalsIgnoreCase("cyan")) { 039 background = color1; 040 } 041 } 042 043 if (! color2.equals(background)) { 044 if (color2.equalsIgnoreCase("black") || 045 color2.equalsIgnoreCase("cyan")) { 046 foreground = color2; 047 } 048 } 049 050 attempts++; 051 } 052 053 public void setColor2(String x) { 054 color2 = x; 055 } 056 057 public void setColor1(String x) { 058 color1 = x; 059 } 060 061 public void setAction(String x) { 062 if (!tookHints) 063 tookHints = x.equalsIgnoreCase("Hint"); 064 hint = x; 065 } 066 067 public String getColor2() { 068 return background; 069 } 070 071 public String getColor1() { 072 return foreground; 073 } 074 075 public int getAttempts() { 076 return attempts; 077 } 078 079 public boolean getHint() { 080 return hint.equalsIgnoreCase("Hint"); 081 } 082 083 public boolean getSuccess() { 084 if (background.equalsIgnoreCase("black") || 085 background.equalsIgnoreCase("cyan")) { 086 087 if (foreground.equalsIgnoreCase("black") || 088 foreground.equalsIgnoreCase("cyan")) 089 return true; 090 else 091 return false; 092 } 093 094 return false; 095 } 096 097 public boolean getHintTaken() { 098 return tookHints; 099 } 100 101 public void reset() { 102 foreground = "red"; 103 background = "yellow"; 104 } 105 106 public void setIntval(int value) { 107 intval = value; 108 } 109 110 public int getIntval() { 111 return intval; 112 } 113 } 114