Sachverhalt:
A.
Am 18. Oktober 2013 stellte die B._ AG bei der Stadt Schaffhausen ein Baugesuch zum Abbruch eines Wohn- und Betriebsgebäudes und zum Neubau einer Gewerbebaute mit 61 Business-Apartments sowie einer Autoeinstellhalle für 43 Personenwagen mit Lifterschliessung an deren Stelle.
Am 7. Januar 2014 beantragte der Stadtrat Schaffhausen beim Baudepartement des Kantons Schaffhausen, das Bauvorhaben sei unter Bedingungen und Auflagen zu bewilligen. Mit Verfügung vom 28. Januar 2014 erteilte das Planungs- und Naturschutzamt des Kantons Schaffhausen, Bauinspektorat, die Baubewilligung, wobei die Bedingungen und Auflagen gemäss Antrag des Stadtrats einen integrierenden Bestandteil der Baubewilligung bildeten.
Den hiegegen erhobenen Rekurs der A._ AG wies der Regierungsrat des Kantons Schaffhausen mit Beschluss vom 21. Oktober 2014 ab. Die Baubewilligung wurde mit der Bedingung ergänzt, dass insgesamt zwölf Parkplätze im Freien zu erstellen seien. Ausnahmsweise könne diese Parkplatzpflicht auf einem nahe gelegenen anderen Grundstück im Freien erfüllt werden. Die Kosten des Verfahrens von Fr. 3'000.-- wurden je zur Hälfte der A._ AG und der B._ AG auferlegt. Es wurden keine Parteientschädigungen zugesprochen.
Diesen Regierungsratsbeschluss focht die A._ AG mit Verwaltungsgerichtsbeschwerde vom 11. November 2014 beim Obergericht des Kantons Schaffhausen an mit den Anträgen, der angefochtene Beschluss und die Baubewilligung vom 28. Januar 2014 seien aufzuheben, unter Kosten- und Entschädigungsfolgen zulasten der Beschwerdegegnerin.
Am 28. Juni 2016 entschied das Obergericht Folgendes:
1. Die Beschwerde wird gutgeheissen, und die Baubewilligung des Planungs- und Naturschutzamtes des Kantons Schaffhausen, Bauinspektorat, vom 28. Januar 2014 sowie der Beschluss des Regierungsrats des Kantons Schaffhausen vom 21. Oktober 2014 werden aufgehoben.
2. Die Kosten des Rekursverfahrens, bestehend aus einer Staatsgebühr von Fr. 3'000.--, werden der Beschwerdeführerin/Rekurrentin und der privaten Beschwerdegegnerin/Rekursgegnerin je zur Hälfte auferlegt.
3. Die Kosten des Beschwerdeverfahrens, bestehend aus einer Staatsgebühr von Fr. 8'000.--, werden der Beschwerdeführerin und der privaten Beschwerdegegnerin je zur Hälfte auferlegt und mit dem von der Beschwerdeführerin geleisteten Vorschuss verrechnet.
Die private Beschwerdegegnerin wird verpflichtet, der Beschwerdeführerin den Kostenvorschuss im Umfang von Fr. 4'000.-- zurückzuerstatten.
4. Für das Rekursverfahren und das Beschwerdeverfahren werden keine Parteientschädigungen zugesprochen.
B.
Mit Eingabe vom 3. August 2016 führt die A._ AG Beschwerde in öffentlich-rechtlichen Angelegenheiten an das Bundesgericht. Sie beantragt die Aufhebung und Abänderung der Dispositiv-Ziffern 2, 3 und 4 des Entscheids des Obergerichts des Kantons Schaffhausen vom 28. Juni 2016 in dem Sinne, dass die Kosten des Rekursverfahrens von Fr. 3'000.-- und des Beschwerdeverfahrens von Fr. 8'000.-- der B._ AG aufzuerlegen seien. Zudem sei diese zu verpflichten, ihr für das Beschwerdeverfahren eine Parteientschädigung in Höhe von Fr. 6'579.05 (einschliesslich 8 % MwSt.) zu bezahlen. Eventualiter seien die Dispositiv-Ziffern 2, 3 und 4 aufzuheben und die Sache zu neuem Entscheid an das Obergericht zurückzuweisen.
Das Obergericht beantragt, die Beschwerde sei abzuweisen, soweit darauf eingetreten werden könne. Die B._ AG stellt Antrag auf Beschwerdeabweisung. Die Beschwerdeführerin hält an ihrem Standpunkt fest.

Erwägungen:
1.
1.1. Dem angefochtenen Urteil der Vorinstanz liegt eine baurechtliche Streitigkeit und damit eine öffentlich-rechtliche Angelegenheit zugrunde. Das Bundesgerichtsgesetz enthält auf dem Gebiet des Raumplanungs- und Baurechts keinen Ausschlussgrund von der Beschwerde in öffentlich-rechtlichen Angelegenheiten (Art. 82 lit. a und Art. 83 BGG). Die Beschwerdeführerin ist Nachbarin im baurechtlichen Sinn und hatte im vorinstanzlichen Verfahren Parteistellung. Die Zulässigkeit der Beschwerde an das Bundesgericht im Kosten- und Entschädigungspunkt folgt derjenigen in der Hauptsache. Die Beschwerdeführerin ist durch den angefochtenen Entscheid im Kosten- und Entschädigungspunkt besonders berührt und hat ein schutzwürdiges Interesse an dessen Aufhebung. Sie ist damit zur Beschwerdeführung berechtigt (<ref-law>).
1.2. Mit der Beschwerde in öffentlich-rechtlichen Angelegenheiten kann die Verletzung von Bundesrecht, Völkerrecht und kantonalen verfassungsmässigen Rechten geltend gemacht werden (Art. 95 lit. a, b und c BGG). Die Verletzung des übrigen kantonalen Rechts kann abgesehen von hier nicht relevanten Ausnahmen vor Bundesgericht nicht gerügt werden. Zulässig ist jedoch die Rüge, die Anwendung dieses Rechts führe zu einer Verletzung von Bundesrecht, namentlich des verfassungsmässigen Willkürverbots (<ref-ruling> E. 2 S. 149 f.).
Das kantonale Gesetz vom 20. September 1971 über den Rechtsschutz in Verwaltungssachen (Verwaltungsrechtspflegegesetz [VRG/ SH; SHR 172.200]) übernimmt einzelne Bestimmungen der Zivilprozessordnung durch Verweis und führt sie dadurch ins kantonale Recht über. Auch die aus dem Bundesrecht übernommenen Bestimmungen sind damit Bestandteil des anwendbaren kantonalen Verfahrensrechts, welches vom Bundesgericht nur auf Willkür überprüft wird (vgl. Urteile 1C_439/2015 vom 21. Dezember 2015 E. 2.2; 1C_467/ 2013 vom 26. Juni 2013 E. 3.4 mit Hinweisen).
Nach der ständigen Praxis des Bundesgerichts liegt Willkür in der Rechtsanwendung vor, wenn der angefochtene Entscheid offensichtlich unhaltbar ist, mit der tatsächlichen Situation in klarem Widerspruch steht, eine Norm oder einen unumstrittenen Rechtsgrundsatz krass verletzt oder in stossender Weise dem Gerechtigkeitsgedanken zuwiderläuft. Das Bundesgericht hebt einen Entscheid jedoch nur auf, wenn nicht bloss die Begründung, sondern auch das Ergebnis unhaltbar ist. Dass eine andere Lösung ebenfalls als vertretbar oder gar zutreffender erscheint, genügt nicht (<ref-ruling> E. 2.4 S. 5).
2.
2.1. Die Vorinstanz hat die Beschwerde der Beschwerdeführerin gutgeheissen und die Baubewilligung sowie den angefochtenen Rekursentscheid aufgehoben. Die Baugesuchstellerin wird bei der Stadt Schaffhausen ein überarbeitetes Baugesuch einzureichen haben, welches erneut zu publizieren ist (angefochtener Entscheid E. 2.4).
Im Kosten- und Entschädigungspunkt hat die Vorinstanz festgehalten, die Beschwerdeführerin obsiege hinsichtlich der Parkplätze, unterliege aber in der grundlegenden Frage der Zonenkonformität des Bauvorhabens. Die Kosten sowohl des Rekursverfahrens als auch des Beschwerdeverfahrens seien daher den Parteien je zur Hälfte aufzuerlegen. Entsprechend seien keine Parteientschädigungen zuzusprechen (Art. 27 Abs. 1 und Art. 28 VRG/SH, Art. 48 Abs. 1 VRG/SH i.V.m. <ref-law>; angefochtener Entscheid E. 3).
2.2. Die Beschwerdeführerin rügt eine willkürliche Anwendung kantonalen Rechts. Mit der Gutheissung der Beschwerde und der Aufhebung der Baubewilligung habe sie vollumfänglich obsiegt, weshalb die Kosten der unterliegenden Beschwerdegegnerin hätten auferlegt werden müssen; zudem hätte diese zur Bezahlung einer Parteientschädigung für das Beschwerdeverfahren verpflichtet werden müssen. Indem die Vorinstanz ihr die Hälfte der Kosten des Rekurs- und des Beschwerdeverfahrens auferlegt und ihr für das Beschwerdeverfahren keine Parteientschädigung zugesprochen habe, habe sie Art. 27 Abs. 1 und Art. 48 Abs. 1 VRG/SH i.V.m. <ref-law> willkürlich angewendet.
2.3.
2.3.1. Gemäss <ref-law>, auf welchen Art. 48 VRG/SH für das Beschwerdeverfahren verweist, werden die Prozesskosten der unterliegenden Partei auferlegt. Prozesskosten sind die Gerichtskosten und die Parteientschädigung (<ref-law>).
Die vollständige Auferlegung der Prozesskosten an eine Partei erfolgt, wenn die andere Partei mit ihren Rechtsbegehren vollumfänglich durchgedrungen ist. Dieser Grundsatz gilt auch im Rechtsmittelverfahren. Entscheidend ist, ob eine Partei in der Hauptsache durchdringt. Massgebend ist das Gesamtergebnis, wobei es nicht darauf ankommt, wie über die einzelnen Angriffs- und Verteidigungsmittel entschieden wird (David Jenny, in: Sutter-Somm/Hasenböhler/Leuenberger [Hrsg.], Kommentar ZPO, 3. Aufl. 2016, N. 6 zu <ref-law> mit Hinweisen).
Die Beschwerdeführerin beantragte in ihrer Beschwerde an die Vorinstanz die Aufhebung des Beschlusses des Regierungsrats vom 21. Oktober 2014 und der Baubewilligung des Bauinspektorats vom 28. Januar 2014. Sie drang somit mit ihren Rechtsbegehren vollumfänglich durch, auch wenn die Vorinstanz die Rüge der mangelnden Zonenkonformität des Bauvorhabens als nicht stichhaltig erachtet hat. Damit gilt die Beschwerdegegnerin als unterliegende Partei im Sinne von <ref-law>.
2.3.2. Die Vorinstanz beruft sich in ihrer Vernehmlassung an das Bundesgericht vom 11. August 2016 (erstmals) auf <ref-law>.
Nach dem Auffangtatbestand von <ref-law> kann das Gericht von den Verteilungsgrundsätzen abweichen und die Prozesskosten nach Ermessen verteilen, wenn andere (als in Abs. 1 lit. a-e aufgeführte) besondere Umstände vorliegen, die eine Verteilung nach dem Ausgang des Verfahrens als unbillig erscheinen lassen.
Nach der Botschaft kann beispielsweise bei einem sehr ungleichen wirtschaftlichen Kräfteverhältnis der Parteien ein Billigkeitsentscheid angezeigt sein (Botschaft zur Schweizerischen Zivilprozessordnung vom 28. Juni 2006, BBl 2006 7298). Mit dieser Bestimmung soll aber die ordentliche Verteilung gemäss <ref-law> nicht ausgehebelt werden (Jenny, a.a.O., N. 17 zu <ref-law>). In der Lehre wird dafür plädiert, von <ref-law> nur mit äusserster Zurückhaltung Gebrauch zu machen. Angezeigt sei eine sehr restriktive Handhabung dieses quasi als "Notventil" eingeführten Auffangtatbestands (Martin H. Sterchi, in: Berner Kommentar ZPO, Band I, 2012, N. 2 und N. 21 zu <ref-law>).
Die Vorinstanz führt nicht aus, worin die besonderen Umstände im Sinne von <ref-law> begründet liegen sollen, welche eine Verteilung der Prozesskosten nach Ermessen erlauben würden. Dies ist auch nicht ersichtlich.
2.3.3. Indem die Vorinstanz bei der Kosten- und Entschädigungsregelung ohne sachlichen Grund vom Unterlieger-Prinzip gemäss <ref-law> abgewichen ist, hat sie diese Bestimmung willkürlich angewendet. Der Beschwerdeführerin, welche mit ihren Rechtsbegehren vollumfänglich durchgedrungen ist, die Hälfte der Kosten des Beschwerdeverfahrens aufzuerlegen und ihr eine Parteientschädigung zu verweigern, ist auch im Ergebnis unhaltbar.
2.4. Auf das Rekursverfahren findet Art. 27 Abs. 1 VRG/SH Anwendung. Nach dieser Bestimmung auferlegt die Rekursinstanz die Verfahrenskosten, bestehend aus Staatsgebühr und Barauslagen, in der Regel der unterliegenden Partei.
Vorliegend sind auch insoweit keine Umstände ersichtlich, welche ein Abweichen vom Regelfall des Unterlieger-Prinzips erlauben würden. Die Beschwerdeführerin zur Bezahlung der Hälfte der Kosten des Rekursverfahrens zu verpflichten, ist mithin ebenso wenig haltbar.
3.
Die Beschwerde ist daher gutzuheissen. Dispositiv-Ziffern 2 und 3 des angefochtenen Entscheids sind aufzuheben. Dispositiv-Ziffer 4 ist aufzuheben, soweit für das Beschwerdeverfahren keine Parteientschädigung zugesprochen worden ist. Der Vorinstanz kommt bei der Festsetzung der Parteientschädigung für das vorinstanzliche Verfahren ein Ermessensspielraum zu. Die Sache ist deshalb zu neuem Entscheid im Kosten- und Entschädigungspunkt an die Vorinstanz zurückzuweisen.
Die Kosten des bundesgerichtlichen Verfahrens sind der unterliegenden Beschwerdegegnerin aufzuerlegen (<ref-law>). Diese hat der obsiegenden Beschwerdeführerin für das bundesgerichtliche Verfahren eine angemessene Parteientschädigung zu bezahlen (Art. 68 Abs. 1 und 2 BGG).

Demnach erkennt das Bundesgericht:
1.
Die Beschwerde wird gutgeheissen. Dispositiv-Ziffern 2 und 3 des angefochtenen Entscheids des Obergerichts des Kantons Schaffhausen vom 28. Juni 2016 werden aufgehoben. Dispositiv-Ziffer 4 wird aufgehoben, soweit für das Beschwerdeverfahren keine Parteientschädigung zugesprochen worden ist. Die Sache wird zu neuem Entscheid im Kosten- und Entschädigungspunkt an die Vorinstanz zurückgewiesen.
2.
Die Gerichtskosten von Fr. 3'000.-- werden der Beschwerdegegnerin auferlegt.
3.
Die Beschwerdegegnerin hat der Beschwerdeführerin für das bundesgerichtliche Verfahren eine Parteientschädigung von Fr. 2'500.-- zu bezahlen.
4.
Dieses Urteil wird den Parteien, dem Stadtrat Schaffhausen, dem Planungs- und Naturschutzamt / Bauinspektorat des Kantons Schaffhausen, dem Regierungsrat des Kantons Schaffhausen und dem Obergericht des Kantons Schaffhausen schriftlich mitgeteilt.
Lausanne, 2. Februar 2017
Im Namen der I. öffentlich-rechtlichen Abteilung
des Schweizerischen Bundesgerichts
Der Präsident: Merkli
Der Gerichtsschreiber: Stohner