A novel approach to solving the shallow-water equations over complex bed topography is proposed. The approach is remarkably simple and efficient, for it treats the convective and pressure terms separately thus there is no need for matrix operation. Moreover, by assuming a constant water level in a cell, the bed slope term is balanced by the hydrostatic pressure gradient. So the slope term does not need to be treated explicitly. Based on the approach a 2D shallow-water hydrodynamic model is developed with the artificial porosity method incorporated to treat wetting and drying process. The model is validated against several benchmark problems. The results are very encouraging, which suggests that there are sufficient possibilities of further success.