Code Sketch


Bixuu02 titanic part-02
By: Mhalsakant School
Category: Programming
//> using platform jvm
//> using jvm 17

import javax.swing._
import javax.swing.event._
import java.awt._
import java.awt.event._

object TitanicPart2App {

  def main(args: Array[String]): Unit = {

    SwingUtilities.invokeLater(new Runnable {
      def run(): Unit = {

        // 1. SECURITY VERIFICATION
        val correctPassword = "Bixuu02_anime"
        val userInput = JOptionPane.showInputDialog(
          null,
          "? DRAMATIC SECURITY VERIFICATION (TITANIC PART 2 - FINALE)\n\nPlease enter Password to access Titanic Part 2 Story:",
          "RMS Titanic Final Access",
          JOptionPane.QUESTION_MESSAGE
        )

        if (userInput == null || userInput != correctPassword) {
          JOptionPane.showMessageDialog(
            null,
            "? Access Denied! Incorrect Password.",
            "Error",
            JOptionPane.ERROR_MESSAGE
          )
          sys.exit(0)
        }

        // 2. STORY DATA (TITANIC PART 2 - EPISODES 1 TO 20)
        val storyData: Map[String, String] = Map(
          "Chapter 1: The Panic Begins" ->
            """==================================================
              |DRAMATIC STORY: TITANIC PART 2 (THE SINKING & FINALE)
              |Directed by James Cameron | Written by Bixuu
              |==================================================
              |
              |MAIN CHARACTERS:
              | - Jack Dawson (The Heroic Lover)
              | - Rose DeWitt Bukater (The Devoted Lover)
              | - Cal Hockley (The Jealous Fianc�)
              | - Captain Smith & Crew
              |
              |CHAPTER 1 STORY & DIALOGUES:
              |Iceberg se takrane ke baad achanak poore jahaz par afra-tafri mach jati hai. Captain Smith ko pata chal jata hai ki ab Titanic ko bachana namumkin hai.
              |
              |Captain Smith (Ghabraye hue andaz mein): "Jahaz ke paani ke andar ke compartments doob rahe hain... lifeboats tayar karo!"
              |Crew Member: "Sir, hamare paas sabhi passengers ke liye poori lifeboats nahi hain!"
              |===================================================""".stripMargin,

          "Chapter 2: Jack Handcuffed" ->
            """==================================================
              |WRITTEN BY BIXUU
              |==================================================
              |
              |CHAPTER 2 STORY & DIALOGUES:
              |Cal Hockley apni beizzati ka badla lene aur Rose ko Jack se door karne ke liye ek chal chalta hai. Wo chupke se apna mehanga diamond necklace Jack ki coat ki pocket mein daal deta hai aur guard ko bula leta hai.
              |
              |Cal: "Dekho! Is chor ne mera necklace chori kiya hai!"
              |Jack: "Kya?! Maine kuch nahi kiya, ye jhoot bol raha hai!"
              |*Guards Jack ko ek officer's cabin mein hathkadi lagakar pipe se baandh dete hain.*
              |===================================================""".stripMargin,

          "Chapter 3: The Rising Water in Lower Decks" ->
            """==================================================
              |WRITTEN BY BIXUU
              |==================================================
              |CHAPTER 3 STORY & DIALOGUES:
              |Jahaz ka agla hissa tezi se pani mein doobne lagta hai, aur lower decks mein pani tezi se bharne lagta hai. Wahan ke gareeb passengers aur third-class ke log band darwazon ki wajah se phans jate hain.
              |
              |Fabrizio (Cheekte hue): "Darwaza kholo! Pani andar aa raha hai!"
              |*Wahan darawana andhera aur cheekh-pukar mach jati hai.*
              |===================================================""".stripMargin,

          "Chapter 4: Rose Refuses to Leave" ->
            """==================================================
              |WRITTEN BY BIXUU
              |==================================================
              |CHAPTER 4 STORY & DIALOGUES:
              |Rose ko lifeboat mein baithne ke liye kaha jata hai kyunki pehle aurton aur bachon ko bachaya ja raha hai. Par jab Rose ko yaad aata hai ki Jack hathkadi se bandha hua niche phansa hai, toh wo beech raste se wapas bhag padti hai.
              |
              |Rose ki Maa: "Rose! Ye kya kar rahi ho? Wapas lifeboat mein aao!"
              |Rose: "Main nahi ja sakti ma... mujhe Jack ke paas jana hai!"
              |===================================================""".stripMargin,

          "Chapter 5: Rescuing Jack" ->
            """==================================================
              |WRITTEN BY BIXUU
              |==================================================
              |CHAPTER 5 STORY & DIALOGUES:
              |Rose daudte hue officer's cabin mein pahunchti hai jahan paani ankle tak bhar chuka hota hai. Jack wahan hathkadi se bandha hua hota hai.
              |
              |Jack (Hairan hokar): "Rose! Tum pagal ho kya? Tumne lifeboat kyun nahi li?!"
              |Rose: "Tumhare bina nahi ja sakti thi. Mujhe ek kulhadi (axe) do, main ise todti hoon."
              |*Rose apni poori taqat se kulhadi chala kar Jack ki hathkadi kaat deti hai.*
              |===================================================""".stripMargin,

          "Chapter 6: Escaping the Flooded Corridors" ->
            """==================================================
              |WRITTEN BY BIXUU
              |==================================================
              |CHAPTER 6 STORY & DIALOGUES:
              |Hathkadi khulte hi dono wahan se bhagte hain, par raste ke darwaze lock milte hain. Pani unke gale tak pahunchne ko hota hai aur andhere mein rasta nahi dikhta.
              |
              |Jack: "Mera haath pakdo, Rose! Hum nikal jayenge!"
              |*Dono kisi tarah teer ki tarah teerhte hue upper deck par pahunchte hain.*
              |===================================================""".stripMargin,

          "Chapter 7: Cal's Desperate Act" ->
            """==================================================
              |WRITTEN BY BIXUU
              |==================================================
              |CHAPTER 7 STORY & DIALOGUES:
              |Upar deck par Cal unhe dekh leta hai. Wo ek chote bache ko apni god mein utha kar dikhata hai ki dekho main kitna compassionate hoon, taaki Rose uske sath lifeboat mein baith jaye.
              |
              |Cal: "Dekho Rose, mere paas ek bacha hai... main safe boat mein ja sakta hoon. Tum mere sath aao."
              |*Lekin jab Rose nahi manti, toh Cal gusse mein unpar goli chala deta hai.*
              |===================================================""".stripMargin,

          "Chapter 8: The Last Lifeboats" ->
            """==================================================
              |WRITTEN BY BIXUU
              |==================================================
              |CHAPTER 8 STORY & DIALOGUES:
              |Aakhri bachi hui lifeboats ko bhi niche utara ja raha hai. Officer logon ko rokne ke liye hawa mein goli chalate hain taaki bheed qaboo mein rahe.
              |
              |Jack: "Rose, tumhe us boat mein baithna hoga."
              |Rose: "Nahi Jack! Agar tum nahi jaoge, toh main bhi nahi jaungi. Tum yahin rukoge, toh main bhi yahin rukungi!"
              |*Rose boat se kood kar wapas Jack ke paas aa jati hai.*
              |===================================================""".stripMargin,

          "Chapter 9: The Ship Tilting Upward" ->
            """==================================================
              |WRITTEN BY BIXUU
              |==================================================
              |CHAPTER 9 STORY & DIALOGUES:
              |Jahaz ka agla hissa poori tarah doob chuka hai, aur pichhla hissa (stern) aasmaan ki taraf uth gaya hai. Jahaz ke andar ka saaman aur log niche gaddhe ki tarah girne lagte hain.
              |
              |Jack: "Pichle hisse ki taraf bhago! Jaldi karo!"
              |*Log jaan bachane ke liye rail pakad kar upar chadh rahe hain.*
              |===================================================""".stripMargin,

          "Chapter 10: The Massive Plunge" ->
            """==================================================
              |WRITTEN BY BIXUU
              |==================================================
              |CHAPTER 10 STORY & DIALOGUES:
              |Jahaz ka beech ka hissa itna vishal wajan aur dabav ki wajah se beech mein se do tukdo (two halves) mein toot jata hai. Awaaz aisi hoti hai jaise koi bada bomb phata ho.
              |
              |Rose (Jack se lipat kar): "Jack! Yeh kya ho raha hai?!"
              |Jack: "Jahaz toot gaya hai... ab hume aur upar ki railing par chalna hoga."
              |===================================================""".stripMargin,

          "Chapter 11: Hanging from the Edge" ->
            """==================================================
              |WRITTEN BY BIXUU
              |==================================================
              |CHAPTER 11 STORY & DIALOGUES:
              |Jahaz ka pichhla hissa thodi der ke liye paani par khada rehta hai aur fir tezi se sidha hone lagta hai. Sabhi log railing se latak jate hain.
              |
              |Jack: "Apni grip mazboot rakhna, Rose. Jab ye pani mein sink karega, toh hume jump karna hoga."
              |Rose: "Main tumhara haath nahi chhodungi, Jack."
              |===================================================""".stripMargin,

          "Chapter 12: Into the Freezing Atlantic" ->
            """==================================================
              |WRITTEN BY BIXUU
              |==================================================
              |CHAPTER 12 STORY & DIALOGUES:
              |Jahaz aakhirkar samundar ki gahrai mein samane lagta hai. Jack aur Rose thande paani mein kood padte hain. Paani itna thanda hota hai ki saans rukne lagti hai.
              |
              |Jack: "Aah! Paani barf ki tarah thanda hai! Rose, apna mooh upar rakho!"
              |===================================================""".stripMargin,

          "Chapter 13: Finding the Wooden Panel" ->
            """==================================================
              |WRITTEN BY BIXUU
              |==================================================
              |CHAPTER 13 STORY & DIALOGUES:
              |Andhere aur thande samundar mein Jack idhar-udhar dekhta hai aur paani par tairta hua ek lakkad ka darwaza / panel dhoond nikalta hai.
              |
              |Jack: "Rose, is par chadh jao! Jaldi karo!"
              |*Jack poori koshish karke Rose ko us wooden panel par chadha deta hai, jisse wo paani se upar safe ho jati hai.*
              |===================================================""".stripMargin,

          "Chapter 14: The Freezing Night" ->
            """==================================================
              |WRITTEN BY BIXUU
              |==================================================
              |CHAPTER 14 STORY & DIALOGUES:
              |Rose panel par leti hai aur Jack paani mein khada hokar uska haath pakde rehta hai. Chaaron taraf sirf murda shav aur bhatakti hui lifeboats ki torch light dikh rahi hoti hain.
              |
              |Rose: "Jack, paani mein mat raho... yahan aao."
              |Jack: "Main theek hoon, Rose... bas apna haath mere haath mein rakho."
              |===================================================""".stripMargin,

          "Chapter 15: The Silence of the Ocean" ->
            """==================================================
              |WRITTEN BY BIXUU
              |==================================================
              |CHAPTER 15 STORY & DIALOGUES:
              |Kuch der baad samundar mein ek ajeeb aur sannaata chha jata hai. Jo hazaron log cheekh rahe the, ab unki aawazein dheere-dheere khatam ho chuki hain kyunki thand ki wajah se sabki jaan ja chuki hai.
              |
              |Rose: "Jack? Kya tum sun rahe ho?"
              |Jack (Kapti hui aawaz mein): "Haan... sun raha hoon... hume himmat nahi haarni chahiye."
              |===================================================""".stripMargin,

          "Chapter 16: The Distant Torchlight" ->
            """==================================================
              |WRITTEN BY BIXUU
              |==================================================
              |CHAPTER 16 STORY & DIALOGUES:
              |Door samundar par ek lifeboat wapas bhatakte hue aate dikhti hai. Officer whistle bajakar dekh rahe hain ki koi zinda hai ya nahi.
              |
              |Rose (Khushi se): "Jack! Dekho, boat wapas aa rahi hai! Hum bach jayenge!"
              |Jack (Dheere se): "Haan... hum bach gaye..."
              |===================================================""".stripMargin,

          "Chapter 17: Jack's Final Words" ->
            """==================================================
              |WRITTEN BY BIXUU
              |==================================================
              |CHAPTER 17 STORY & DIALOGUES:
              |Lekin jab tak boat paas aati hai, Jack ki body thand ki wajah se behad kamzor ho chuki hoti hai. Wo Rose ka haath dheere se apne haath se alag karne lagta hai.
              |
              |Jack: "Rose... mujhse ek wada karo. Tum jeewan mein kabhi haar nahi manogi... chahe kuch bhi ho jaye, chahe kitne bhi din kharab aayein."
              |Rose: "Main wada karti hoon, Jack... main kabhi haar nahi manungi."
              |Jack: "Accha kiya... Titanic par aana meri sabse acchi kismat thi..."
              |===================================================""".stripMargin,

          "Chapter 18: Letting Go" ->
            """==================================================
              |WRITTEN BY BIXUU
              |==================================================
              |CHAPTER 18 STORY & DIALOGUES:
              |Rose roti hai aur Jack ka chehra dekhti hai. Jack ki aankhein dheere-dheere band ho jati hain aur uska haath panel se chhoot kar samundar ki gahrai mein doob jata hai.
              |
              |Rose (Cheekte hue): "Jack! Jack! Main kabhi nahi chhodungi... kabhi nahi!"
              |*Rose apni aakhri taqat se whistle bajati hai jab tak lifeboat unke paas nahi aa jati.*
              |===================================================""".stripMargin,

          "Chapter 19: Rescue and Survival" ->
            """==================================================
              |WRITTEN BY BIXUU
              |==================================================
              |CHAPTER 19 STORY & DIALOGUES:
              |Lifeboat wale Rose ko bacha lete hain. Wo New York pahunchti hai jahan unhe ek naye sheher mein nayi shuruat karni hoti hai. Rose apna naam badal kar 'Rose Dawson' rakh leti hai.
              |
              |Rose (Man hi man): "Maine jo wada Jack se kiya tha, main use hamesha nibhaungi."
              |===================================================""".stripMargin,

          "Chapter 20: The Grand Finale & Epilogue" ->
            """==================================================
              |WRITTEN BY BIXUU
              |==================================================
              |CHAPTER 20 STORY & DIALOGUES (TITANIC FINALE):
              |Bhoodhi ho chuki Rose apna wo purana 'Heart of the Ocean' diamond wapas usi samundar mein gira deti hai jahan Titanic dooba tha.
              |
              |Author's Final Note:
              | "Pyaar kabhi nahi marta. Jack aur Rose ka prem amar ho chuka hai!"
              |
              |THE END - TITANIC FINALE WRITTEN & ADAPTED BY BIXUU.
              |==================================================
              |
              |? ANNOUNCEMENT FROM CREATOR BIXUU:
              |"BIXUU (??????) SUCCESSFULLY COMPLETED THE ENTIRE TITANIC SAGA! 
              |Hope you loved Part 1 and Part 2 (Finale). Stay tuned for more masterpieces!"
              |===================================================""".stripMargin
        )

        // 3. GUI WINDOW CREATION
        val frame = new JFrame("Movie Story Viewer: TITANIC PART 2 (FINALE) - By Bixuu")
        frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE)
        frame.setSize(950, 650)
        frame.setLocationRelativeTo(null)

        // Header (Ocean Blue / Deep Sea Theme Color)
        val headerLabel = new JLabel("  ? TITANIC PART 2: THE SINKING & ETERNAL LOVE (Adapted by Bixuu)  ", SwingConstants.CENTER)
        headerLabel.setFont(new Font("Arial", Font.BOLD, 14))
        headerLabel.setOpaque(true)
        headerLabel.setBackground(new Color(10, 30, 60))
        headerLabel.setForeground(Color.WHITE)
        headerLabel.setPreferredSize(new Dimension(950, 40))

        // Chapter List
        val chapterKeys = (1 to 20).map(i => storyData.keys.find(_.startsWith(s"Chapter $i:")).getOrElse(s"Chapter $i")).toArray
        val listModel = new DefaultListModel[String]()
        chapterKeys.foreach(listModel.addElement)

        val chapterList = new JList[String](listModel)
        chapterList.setFont(new Font("Arial", Font.PLAIN, 12))
        chapterList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION)
        chapterList.setSelectedIndex(0)

        val listScrollPane = new JScrollPane(chapterList)
        listScrollPane.setPreferredSize(new Dimension(320, 500))

        // Story Text Area
        val storyArea = new JTextArea()
        storyArea.setFont(new Font("Monospaced", Font.PLAIN, 13))
        storyArea.setEditable(false)
        storyArea.setLineWrap(true)
        storyArea.setWrapStyleWord(true)
        storyArea.setBackground(new Color(20, 20, 20))
        storyArea.setForeground(new Color(230, 230, 230))
        storyArea.setText(storyData(chapterKeys(0)))
        storyArea.setCaretPosition(0)

        val textScrollPane = new JScrollPane(storyArea)

        // Selection Listener
        chapterList.addListSelectionListener(new ListSelectionListener {
          def valueChanged(e: ListSelectionEvent): Unit = {
            if (!e.getValueIsAdjusting) {
              val selectedKey = chapterList.getSelectedValue
              if (selectedKey != null && storyData.contains(selectedKey)) {
                storyArea.setText(storyData(selectedKey))
                storyArea.setCaretPosition(0)
              }
            }
          }
        })

        // Layout Assembly
        val mainPanel = new JPanel(new BorderLayout())
        mainPanel.add(headerLabel, BorderLayout.NORTH)
        mainPanel.add(listScrollPane, BorderLayout.WEST)
        mainPanel.add(textScrollPane, BorderLayout.CENTER)

        frame.add(mainPanel)
        frame.setVisible(true)
      }
    })
  }
}

// Direct Execution Entrypoint for Scala Script / REPL
TitanicPart2App.main(Array())