Procházet zdrojové kódy

[Code updates] Remove ballet exploit, and amended text for clarity. Numerous minor changes to streamline ballet quests into the new journal quest layout that is in progress.

Myles Croft (Hooded Silence) před 3 měsíci
rodič
revize
7df1622cda

+ 20 - 13
locations/beta_journal_quests.qsrc

@@ -51,7 +51,7 @@ end
 !! Friends and Relations
 if $ARGS[0] = 'rel_pavlovsk':
 	gs $loc_id, 'pavlovsk_array'
-	$table_gen_max = 6
+	$table_gen_max = loc_gen
 	gs $loc_id, 'table_gen'
 
 end
@@ -61,8 +61,6 @@ if $ARGS[0] = 'rel_gad':
 end
 if $ARGS[0] = 'rel_pushkin':
 	!! Ballet Maya
-
-
 end
 
 !! Game locations - quests
@@ -214,7 +212,7 @@ if $ARGS[0] = 'failure':
 	if $ARGS[1] = 'id':
 		$debug['journal'] = 'NPC ID not set, vcard not generated.'
 	elseif $ARGS[1] = 'quest_body':
-		$debug['journal'] = 'Quest body not set, quests details was not display.'
+		$debug['journal'] = 'Quest body not set, quests details was not set.'
 	elseif $ARGS[1] = 'nav_forward':
 		$debug['journal'] = 'No forward navigation set - please ensure you have set the var in quest_data'
 	elseif $ARGS[1] = 'nav_back':
@@ -310,26 +308,35 @@ end
 if $ARGS[0] = 'pavlovsk_array':
 	!! Set up locations for image paths for the loop
 	loc_gen = 1
+	!! Display Name
 	$loc_name[loc_gen] = 'Five Eight Estate'
+	!! $args[1] function name to show data
 	$loc_shortname[loc_gen] = '58_estate'
+	!! default game image file path
 	$loc_path[loc_gen] = 'images/locations/pavlovsk/resident/apartment/complex.jpg'
-	loc_gen = 2
-	$loc_name[loc_gen] = 'Commercial'
+	!! Area description to indicate what is in this area.
+	$loc_description[loc_gen] = 'Five Eight Estate where your parents and aunt Luda live. There is also the garage that your father hires to fix his car.'
+
+	!$loc_path[loc_gen] =
+
+	loc_gen += 1
+	$loc_name[loc_gen] = 'Commercial Area'
 	$loc_shortname[loc_gen] = 'commercial'
 	$loc_path[loc_gen] = 'images/locations/pavlovsk/gorodok.jpg'
-	loc_gen = 3
-	$loc_name[loc_gen] = 'Industrial'
+	$loc_description[loc_gen] = ''
+	loc_gen += 1
+	$loc_name[loc_gen] = 'Industrial Area'
 	$loc_shortname[loc_gen] = 'industrial'
 	$loc_path[loc_gen] = 'images/locations/pavlovsk/factory/pav_factory.jpg'
-	loc_gen = 4
-	$loc_name[loc_gen] = 'Market'
+	loc_gen += 1
+	$loc_name[loc_gen] = 'Pavlovsk Market'
 	$loc_shortname[loc_gen] = 'market'
 	$loc_path[loc_gen] = 'images/locations/pavlovsk/pav_market_day.jpg'
-	loc_gen = 5
-	$loc_name[loc_gen] = 'Park'
+	loc_gen += 1
+	$loc_name[loc_gen] = 'Pavlovsk Park'
 	$loc_shortname[loc_gen] = 'park'
 	$loc_path[loc_gen] = 'images/locations/pavlovsk/park/skver.jpg'
-	loc_gen = 6
+	loc_gen += 1
 	$loc_name[loc_gen] = 'Train Station'
 	$loc_shortname[loc_gen] = 'train_station'
 	$loc_path[loc_gen] = 'images/locations/pavlovsk/trainstation/vokzal.jpg'

+ 1 - 1
locations/emp_functions.qsrc

@@ -63,7 +63,7 @@ if $ARGS[0] = 'gen_schedule':
 			$tableheader += '<th style="padding: 10px;"><font color="<<$font_theme>>">' + iif(display_hour < 10, '0<<display_hour >>', display_hour) + ':00</font></th>'
 		elseif header_switch=2:
 			header_switch = 1
-			$tableheader += '<th style="padding: 10px;"><font color="<<$font_theme>>">' + iif(display_hour < 10, '0<< display_hour>>', display_hour) + ':30</font></th>'
+			$tableheader += '<th style="padding: 10px;"><font color="<<$font_theme>>">' + iif(display_hour < 10, '0<<display_hour>>', display_hour) + ':30</font></th>'
 		end
 		i_hour += 1
 	if i_hour <= mod_max_hour: jump 'jmp_header_create'

+ 7 - 2
locations/pushkin_ballet_class.qsrc

@@ -34,8 +34,12 @@ if $ARGS[0] = 'start':
 
 	!! Random trivia - Terpsichore is one of the nine Greecian muses. Her sphere was dance, rhythm and choral music.
 
-	if ballet_day = 6 and balletqw['school'] ! 1:
+	if (balletqw['daystart'] + 7 = daystart) and hour = 7:
 		gt $loc, 'assessment'
+	elseif ( daystart >= balletqw['daystart'] + 8 ) or (balletqw['daystart'] + 7 = daystart and hour > 7):
+		mod_grade_score['class'] -= 500
+		'You were late or did not attend the exam. You have failed the course.'
+		act 'Return home' : gt 'pav_commcenter'
 	elseif ballet_day = 6 and balletqw['school'] = 1:
 		gs 'stat'
 		gs 'core_library', 'stage_title'
@@ -314,7 +318,8 @@ if $ARGS[0] = 'shower':
 	end
 end
 if $ARGS[0] = 'grade_check':
-	$popup_advise = '<center><h3>You critically look at your appearance according to the schools assessment guidelines:</h3></center>'
+	$popup_advise = '<center><h3>Appearance</h3></center>'
+	$popup_advise += 'You critically look at your appearance according to the schools assessment guidelines:'
 	$popup_advise += '<br><br>'
 	if pcs_makeup > 1:
 		$popup_advise += '<font color = "green">✓</font> Your make up is of an acceptable standard.</font>'

+ 1 - 0
locations/pushkin_ballet_evt.qsrc

@@ -337,6 +337,7 @@ end
 
 if $ARGS[0] = 'intro_274':
 	*clr & cla
+	mayaqw['path'] = 1
 	'<center><a><img <<$set_imgh>> src="<<$npc_img_path[''A274'']>>/274-1.jpg"></center>'
 	'You walk over to a tall willowly blonde girl, "Hi I''m <<$pcs_nickname>>". The girl gives you a warm smile, "I''m <<$npc_firstname[''A274'']>> pleased to meet you. Where you from?" ''Pavlosk'' you reply, ''Yourself?'''
 	'"I live Pushkin now but from Moscow originally.", <<$npc_firstname[''A274'']>> replles before another girl jumps in taking her attention.'

+ 2 - 1
locations/pushkin_ballet_init.qsrc

@@ -25,6 +25,7 @@
 !! balletqw[performances] - How many shows perfomed
 !! mayaqw[grave] - Did you attend Anitchka's grave with Maya, 3 means you talked to Maya, 4 means you were empathic. Has impact later on Maya''s actions towards the player.
 !! mayaqw[trust] - How much Maya trusts you and works in conjunction with npc_rel
+!! mayaqw[path] - progress tracker for maya quests
 !! Rudolph quest is broken into two variables the main tracker being rudolphqw[stage] and rudolphqw[corruption], the latter reflects his slow insidious undermining of Sveta''s confidence and the former is how
 !! much she has submitted to his authority and demands. Corruption opens dialogue options.
 !!
@@ -220,7 +221,7 @@ if $ARGS[0] = 'cleanup_var':
 	killvar 'mod_grade_uniform'
 	killvar 'mod_grade_health'
 	killvar 'mod_class_debug'
-
+	gs 'shortgs', 'remove_array_element', 'balletqw', 'daystart'
 	gs 'shortgs', 'remove_array_element', 'ballet_mod', 'letter'
 	gs 'shortgs', 'remove_array_element', 'ballet_mod', 'res_mg'
 end

+ 9 - 3
locations/pushkin_ballet_res.qsrc

@@ -11,7 +11,7 @@
 !!
 !! Variables
 !!
-!! ballet_first_visit - used to set first night
+!! balletqw[daystart] - used to set first night
 !! ballet_day - Sets which day of the course you are on.
 
 $default_img_path = 'locations/pushkin/'
@@ -48,10 +48,10 @@ if $ARGS[0] = 'bedroom':
 	gs 'stat'
 	gs 'core_library', 'stage_title'
 
-	if ballet_first_visit = 0:
+	if balletqw['daystart'] = 0:
 		gs 'homes_properties', 'set_home', 'pushkin_ballet_dorm'
 
-		ballet_first_visit = 1
+		balletqw['daystart'] = daystart
 		if week ! 7 : ballet_day = week
 
 		'You look around your room that will be the bedroom for the next week, and a small comfortable bed sits in the corner. You have a desk you can study on. In the corner, there''s a full-size <a href="exec:gt ''wardrobe'', ''start''">wardrobe</a> with a mirror on one of the doors.'
@@ -82,6 +82,8 @@ if $ARGS[0] = 'bedroom':
 			act 'Answer the knock' : gs 'npc_274_init','grave'
 		elseif ballet_day = 3 and hour > 19 and mayaqw['grave'] = 1:
 			act 'Another knock': gt 'npc_274_init', 'post_grave'
+		else
+			mayaqw['grave'] = -1
 		end
 		!! Default actions
 		gs 'core_library', 'bedroom'
@@ -309,9 +311,13 @@ if $ARGS[0] = 'class_schedule':
 	'1600 - 1700: Ballet and musical theory.'
 	*nl
 	'Saturday:'
+	'0730 - Depart residence.'
 	'0800 - 1200: Graded assessment.'
 	*nl
+	'Transportation will be provided after the assessment and you will be informed of your results by letter in two weeks.'
+	*nl
 	'Rules:'
+	*nl
 	'Whilst attending classes students are expected dressed in sports clothing, perferably a leotard.'
 	'You must also set your hair in a braid or a bun, no other styles are acceptable.'
 	'Make up must be worn at all times, and you must be clean and presentable during classes. You will have access to showers during the day.'

+ 38 - 11
locations/quest_data_a274.qsrc

@@ -1,14 +1,19 @@
 # quest_data_a274
-
 !! NPC 274 Maya Semionova
 
 if $ARGS[0] = 'init':
+    $loc_id = 'quest_data_a274'
     !! init all vars and data
 
     if ballet['debug'] = 1:  debug['code']  = 1
-
+    if qstage ! 0:
+		gs $loc_id, 'quest_body', 'stage_<<qstage>>'
+	else
+		gt $loc_id, 'debug'
+	end
 end
-if ARGS[0] = '':
+if $ARGS[0] = '':
+	gt $loc_id, 'debug'
 end
 if $ARGS[0] = 'quest_body':
     !! create quest body and navigation as required - mandatory fields:
@@ -20,28 +25,50 @@ if $ARGS[0] = 'quest_body':
 
     !! Stage 1
 
-    if $ARGS[1] = 'stage1':
+    if $ARGS[1] = 'stage_1':
     !! first stage, so set to null to ensure nav works.
         $npc_quest['q_back'] = 'null'
-        $npc_quest['q_next'] = 'stage2'
+        if mayaqw['path'] >= 1:
+            $npc_quest['q_next'] = 'stage_2'
+        else
+            $npc_quest['q_next'] = 'null'
+        end
+        $npc_quest['hints'] = 'Attend the Pushken Ballet School and interact with the students.'
     !! Quest body text:
-        $npc_['quest_body'] = 'Build Maya''s trust: Meet Maya at the Residential Dance School in Pushkin.'
+        $npc_quest['body'] = 'Build Maya''s trust: Meet Maya at the Residential Dance School in Pushkin.'
     end
 
     !! Stage 2
-    if $ARGS[1] = 'stage2':
-        !! first stage, so set to null to ensure nav works.
-            $npc_quest['q_back'] = 'stage1'
+    if $ARGS[1] = 'stage_2':
+		$npc_quest['q_back'] = 'stage_1'
+        if mayaqw['path'] >= 3:
+            $npc_quest['q_next'] = 'stage_3'
+        else
             $npc_quest['q_next'] = 'null'
-        !! Quest body text:
-            $npc_['quest_body'] = 'Build Maya''s trust: Continue to meet and talk to Maya.'
         end
 
+		$npc_quest['q_next'] = 'null'
+        $npc_quest['hints'] = 'Accept Maya''s invitation.'
+        if mayaqw['grave'] = 0:
+            $npc_quest['body'] = 'Build Maya''s trust: Continue to meet and talk to Maya.'
+        elseif mayaqw['grave'] = -1:
+            $npc_quest['body'] = 'You spent the evening dedicated to studying ballet and ignored Maya''s visit to your room.'
+        elseif mayaqw['grave'] = 1:
+            $npc_quest['body'] = 'You ignored Maya''s first knock when she came to visit.'
+        elseif mayaqw['grave'] = 3:
+            $npc_quest['body'] =  'You invited Maya into your room and had a brief heartfelt conversation about her past.'
+        elseif mayaqw['grave'] = 4:
+            $npc_quest['body'] = 'You went to graveyard and supported Maya in her grief, and had a hearftelt conversation with her afterwards in your room.'
+        end
+    end
+
 
     !! Stage 3
 
+
 end
 if $ARGS[0] = 'debug':
     !! creata debug data sheet of all associated variables to be displayed in a pop up
+    'Event init failed, $ARGS not set.'
 end
 --- quest_data_a274 ---------------------------------