@@ -110,115 +110,114 @@ private void removeEntities(final CommandSource sender, final World world, final
110
110
continue ;
111
111
}
112
112
}
113
- //TODO: this would probably be better as a case statement instead of all the ifs
114
- if (toRemove == ToRemove .DROPS )
113
+ if (e instanceof Tameable )
115
114
{
115
+ if (((Tameable )e ).isTamed ())
116
+ {
117
+ continue ;
118
+ }
119
+ }
120
+ switch (toRemove )
121
+ {
122
+ case DROPS :
116
123
if (e instanceof Item )
117
124
{
118
125
e .remove ();
119
126
removed ++;
120
127
}
121
- }
122
- else if ( toRemove == ToRemove . ARROWS )
123
- {
128
+ ;
129
+ break ;
130
+ case ARROWS :
124
131
if (e instanceof Projectile )
125
132
{
126
133
e .remove ();
127
134
removed ++;
128
135
}
129
- }
130
- else if (toRemove == ToRemove .BOATS )
131
- {
136
+ break ;
137
+ case BOATS :
132
138
if (e instanceof Boat )
133
139
{
134
140
e .remove ();
135
141
removed ++;
136
142
}
137
- }
138
- else if (toRemove == ToRemove .MINECARTS )
139
- {
143
+ break ;
144
+ case MINECARTS :
140
145
if (e instanceof Minecart )
141
146
{
142
147
e .remove ();
143
148
removed ++;
144
149
}
145
- }
146
- else if (toRemove == ToRemove .XP )
147
- {
150
+ break ;
151
+ case XP :
148
152
if (e instanceof ExperienceOrb )
149
153
{
150
154
e .remove ();
151
155
removed ++;
152
156
}
153
- }
154
- else if (toRemove == ToRemove .PAINTINGS )
155
- {
157
+ break ;
158
+ case PAINTINGS :
156
159
if (e instanceof Painting )
157
160
{
158
161
e .remove ();
159
162
removed ++;
160
163
}
161
- }
162
- else if (toRemove == ToRemove .ITEMFRAMES )
163
- {
164
+ break ;
165
+ case ITEMFRAMES :
164
166
if (e instanceof ItemFrame )
165
167
{
166
168
e .remove ();
167
169
removed ++;
168
170
}
169
- }
170
- else if (toRemove == ToRemove .ENDERCRYSTALS )
171
- {
171
+ break ;
172
+ case ENDERCRYSTALS :
172
173
if (e instanceof EnderCrystal )
173
174
{
174
175
e .remove ();
175
176
removed ++;
176
177
}
177
- }
178
- else if (toRemove == ToRemove .AMBIENT )
179
- {
178
+ break ;
179
+ case AMBIENT :
180
180
if (e instanceof Flying )
181
181
{
182
182
e .remove ();
183
183
removed ++;
184
184
}
185
- }
186
- else if ( toRemove == ToRemove . HOSTILE || toRemove == ToRemove . MONSTERS )
187
- {
185
+ break ;
186
+ case HOSTILE :
187
+ case MONSTERS :
188
188
if (e instanceof Monster || e instanceof ComplexLivingEntity || e instanceof Flying || e instanceof Slime )
189
189
{
190
190
e .remove ();
191
191
removed ++;
192
192
}
193
- }
194
- else if ( toRemove == ToRemove . PASSIVE || toRemove == ToRemove . ANIMALS )
195
- {
193
+ break ;
194
+ case PASSIVE :
195
+ case ANIMALS :
196
196
if (e instanceof Animals || e instanceof NPC || e instanceof Snowman || e instanceof WaterMob )
197
197
{
198
198
e .remove ();
199
199
removed ++;
200
200
}
201
- }
202
- else if (toRemove == ToRemove .MOBS )
203
- {
201
+ break ;
202
+ case MOBS :
204
203
if (e instanceof Animals || e instanceof NPC || e instanceof Snowman || e instanceof WaterMob
205
204
|| e instanceof Monster || e instanceof ComplexLivingEntity || e instanceof Flying || e instanceof Slime )
206
205
{
207
206
e .remove ();
208
207
removed ++;
209
208
}
210
- }
211
- else if (toRemove == ToRemove .ENTITIES )
212
- {
209
+ break ;
210
+ case ENTITIES :
213
211
if (e instanceof Entity )
214
212
{
215
- if (e instanceof HumanEntity )
213
+ if (e instanceof HumanEntity )
216
214
{
217
215
continue ;
218
216
}
219
217
e .remove ();
220
218
removed ++;
221
219
}
220
+ break ;
222
221
}
223
222
}
224
223
}
0 commit comments