@@ -1680,6 +1680,8 @@ ocargo.LevelEditor = function(levelId) {
1680
1680
}
1681
1681
1682
1682
function onDragStart ( x , y ) {
1683
+ // cow shouldn't be in the cow group during dragging
1684
+ removeCowFromCowList ( cow ) ;
1683
1685
var bBox = image . getBBox ( ) ;
1684
1686
imageWidth = bBox . width ;
1685
1687
imageHeight = bBox . height ;
@@ -1695,12 +1697,14 @@ ocargo.LevelEditor = function(levelId) {
1695
1697
}
1696
1698
1697
1699
function onDragEnd ( ) {
1698
- setCowMarkingsOnMouseUp ( controlledCoord , cow ) ;
1699
-
1700
+
1700
1701
if ( trashcanOpen ) {
1701
1702
cow . destroy ( ) ;
1703
+ unmarkOldCowSquare ( controlledCoord , cow ) ;
1702
1704
closeTrashcan ( ) ;
1703
1705
} else {
1706
+ setCowMarkingsOnMouseUp ( controlledCoord , cow ) ;
1707
+ cows . push ( cow ) ;
1704
1708
cow . coordinate = controlledCoord ;
1705
1709
cow . valid = isValidDraggedCowPlacement ( controlledCoord , cow ) ;
1706
1710
if ( cow . isOnRoad ( ) ) {
@@ -1731,6 +1735,13 @@ ocargo.LevelEditor = function(levelId) {
1731
1735
addReleaseListeners ( image . node ) ;
1732
1736
}
1733
1737
1738
+ function removeCowFromCowList ( cow ) {
1739
+ var index = cows . indexOf ( cow ) ;
1740
+ if ( index > - 1 ) {
1741
+ cows . splice ( index , 1 ) ;
1742
+ }
1743
+ }
1744
+
1734
1745
function isValidDraggedCowPlacement ( controlledCoord , cow ) {
1735
1746
if ( isOriginCoordinate ( controlledCoord ) || isHouseCoordinate ( controlledCoord ) )
1736
1747
return false ;
@@ -1864,10 +1875,12 @@ ocargo.LevelEditor = function(levelId) {
1864
1875
internalCow . destroy ( ) ;
1865
1876
}
1866
1877
}
1867
-
1868
- setCowMarkingsOnMouseUp ( controlledCoord , internalCow ) ;
1869
- adjustCowGroupMinMaxFields ( internalCow ) ;
1870
-
1878
+
1879
+ if ( ! trashcanOpen ) {
1880
+ setCowMarkingsOnMouseUp ( controlledCoord , internalCow ) ;
1881
+ adjustCowGroupMinMaxFields ( internalCow ) ;
1882
+ }
1883
+
1871
1884
$ ( document )
1872
1885
. off ( 'mousemove' , handleDraggableCowDragging )
1873
1886
. off ( 'mouseup mouseleave' , handleDraggableCowMouseUp ) ;
0 commit comments