Trap

Trap

This review may contain spoilers. I can handle the truth.

This review may contain spoilers.

Josh Hartnett deserves better. 

The idea is great and had potential. I loved the profiler’s commentary blending in with the scenarios. 

But it feels like it was written by someone who doesn’t understand police and governments and security, etc. The city and state would approve the budget? The pop star wouldn’t have police physically with her? Why the fuck doesn’t she call 911 then flush the phone down the toilet?!

The dialogue is awful. Just putrid. This creates the weird situation where the non-verbal acting is fairly good, but god, the verbal aspects of the acting are so, so awful. If you just take body language and pretend it’s a silent film, hartnett is great. But the dialogue and delivery make it into a shit performance. Shayamalan’s daughter might give the overall best performance, but her delivery is ridiculous, too: “Should I play a song?!”

It’s so on-brand and offensive that the guy with a speaking cameo in all his movies tries here to launch his daughter’s music career using one of those movies. 

There’s no subtlety in the filmmaking: guy is apprehended, surrounded by cops, kneels down next to his kid’s bike, and messes around with it, obviously has something in his hand? Better have a zoom shot of the bike showing a missing spoke. But on the other hand the mom thing is so far the opposite, completely underdeveloped and hamfisted. 

I’m not angry that I saw this, but through the runtime I sat there saying louder and louder: “This movie is bad… this movie is so bad… this movie is terrible.”

Block or Report
' ].join(''); if ( adsScript && adsScript === 'bandsintown' && adsPlatforms && ((window.isIOS && adsPlatforms.indexOf("iOS") >= 0) || (window.isAndroid && adsPlatforms.indexOf("Android") >= 0)) && adsLocations && adsMode && ( (adsMode === 'include' && adsLocations.indexOf(window.adsLocation) >= 0) || (adsMode === 'exclude' && adsLocations.indexOf(window.adsLocation) == -1) ) ) { var opts = { artist: "", song: "", adunit_id: 100005950, div_id: "cf_async_07bb646a-200a-4b71-8ea7-15385de4a443" }; adUnit.id = opts.div_id; if (target) { target.insertAdjacentElement('beforeend', adUnit); } else { tag.insertAdjacentElement('afterend', adUnit); } var c=function(){cf.showAsyncAd(opts)};if(typeof window.cf !== 'undefined')c();else{cf_async=!0;var r=document.createElement("script"),s=document.getElementsByTagName("script")[0];r.async=!0;r.src="//srv.tunefindforfans.com/fruits/apricots.js";r.readyState?r.onreadystatechange=function(){if("loaded"==r.readyState||"complete"==r.readyState)r.onreadystatechange=null,c()}:r.onload=c;s.parentNode.insertBefore(r,s)}; } else { adUnit.id = 'pw-07bb646a-200a-4b71-8ea7-15385de4a443'; adUnit.className = 'pw-div -tile300x250 -alignleft -bottommargin'; adUnit.setAttribute('data-pw-' + (renderMobile ? 'mobi' : 'desk'), 'med_rect_btf'); if (target) { target.insertAdjacentElement('beforeend', adUnit); } else { tag.insertAdjacentElement('afterend', adUnit); } window.addEventListener('DOMContentLoaded', (event) => { adUnit.insertAdjacentHTML('afterend', kicker); window.ramp.que.push(function () { window.ramp.addTag('pw-07bb646a-200a-4b71-8ea7-15385de4a443'); }); }, { once: true }); } } tag.remove(); })(document.getElementById('script-07bb646a-200a-4b71-8ea7-15385de4a443'));
' ].join(''); if ( adsScript && adsScript === 'bandsintown' && adsPlatforms && ((window.isIOS && adsPlatforms.indexOf("iOS") >= 0) || (window.isAndroid && adsPlatforms.indexOf("Android") >= 0)) && adsLocations && adsMode && ( (adsMode === 'include' && adsLocations.indexOf(window.adsLocation) >= 0) || (adsMode === 'exclude' && adsLocations.indexOf(window.adsLocation) == -1) ) ) { var opts = { artist: "", song: "", adunit_id: 100005950, div_id: "cf_async_25b9126b-2545-4b1a-8ed1-22c41f15a6d4" }; adUnit.id = opts.div_id; if (target) { target.insertAdjacentElement('beforeend', adUnit); } else { tag.insertAdjacentElement('afterend', adUnit); } var c=function(){cf.showAsyncAd(opts)};if(typeof window.cf !== 'undefined')c();else{cf_async=!0;var r=document.createElement("script"),s=document.getElementsByTagName("script")[0];r.async=!0;r.src="//srv.tunefindforfans.com/fruits/apricots.js";r.readyState?r.onreadystatechange=function(){if("loaded"==r.readyState||"complete"==r.readyState)r.onreadystatechange=null,c()}:r.onload=c;s.parentNode.insertBefore(r,s)}; } else { adUnit.id = 'pw-25b9126b-2545-4b1a-8ed1-22c41f15a6d4'; adUnit.className = 'pw-div'; adUnit.setAttribute('data-pw-' + (renderMobile ? 'mobi' : 'desk'), 'sky_btf'); if (target) { target.insertAdjacentElement('beforeend', adUnit); } else { tag.insertAdjacentElement('afterend', adUnit); } window.addEventListener('DOMContentLoaded', (event) => { adUnit.insertAdjacentHTML('afterend', kicker); window.ramp.que.push(function () { window.ramp.addTag('pw-25b9126b-2545-4b1a-8ed1-22c41f15a6d4'); }); }, { once: true }); } } tag.remove(); })(document.getElementById('script-25b9126b-2545-4b1a-8ed1-22c41f15a6d4'));