New Dialog system for better UI control. ALmost there...

This commit is contained in:
Zukero
2017-11-05 01:47:27 +01:00
parent e87ea318ec
commit e4be5d35a8
140 changed files with 1591 additions and 1170 deletions

View File

@@ -5,4 +5,5 @@
<item android:state_enabled="true" android:state_checked="true" android:color="#ffffffff"/>
<item android:state_enabled="true" android:state_checked="false" android:color="#fff0f0f0"/>
<item android:state_enabled="false" android:color="#ff858585"/>
<item android:color="#fff0f0f0"/>
</selector>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.7 KiB

After

Width:  |  Height:  |  Size: 6.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 501 B

After

Width:  |  Height:  |  Size: 465 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 463 B

After

Width:  |  Height:  |  Size: 379 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 472 B

After

Width:  |  Height:  |  Size: 402 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 466 B

After

Width:  |  Height:  |  Size: 399 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 474 B

After

Width:  |  Height:  |  Size: 400 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 351 B

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
style="@style/AndorsTrail_Blue_StdFrame"
style="@style/AndorsTrail_Blue_TabFrame"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal" >
@@ -65,7 +65,6 @@
android:id="@+id/inventorylist_sort_filters"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="5dp"
android:orientation="horizontal"
android:prompt="@string/heroinfo_inventory_sort" />
</LinearLayout>

View File

@@ -28,10 +28,9 @@
<TextView
android:id="@+id/combatview_status"
android:layout_width="match_parent"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:paddingBottom="4sp"
android:shadowColor="#000"
android:shadowDx="1"
android:shadowDy="1"

View File

@@ -1,62 +1,84 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
android:minHeight="53dip"
android:minWidth="50dp"
android:orientation="vertical"
android:fitsSystemWindows="true" >
<LinearLayout android:id="@+id/title_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:gravity="center_vertical"
android:minHeight="53dp"
android:paddingTop="6dp"
android:paddingBottom="9dp"
android:paddingStart="10dp"
android:paddingEnd="10dp"
android:background="@drawable/ui_blue_richframe"
>
<ImageView android:id="@+id/left_icon"
android:layout_width="32dp"
android:layout_height="32dp"
android:layout_marginTop="6dp"
android:layout_gravity="top"
android:scaleType="fitCenter"
/>
<TextView android:id="@+id/title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0"
android:paddingTop="2dp"
android:paddingBottom="1dp"
android:paddingStart="14dp"
android:paddingEnd="14dp"
/>
</LinearLayout>
<FrameLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical"
android:background="@drawable/ui_blue_stdframe"
>
<FrameLayout android:id="@+id/content"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
</FrameLayout>
android:paddingBottom="9dip"
android:paddingEnd="20dip"
android:paddingStart="20dip"
android:paddingTop="9dip" >
<LinearLayout android:id="@+id/button_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:gravity="center_horizontal">
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:orientation="horizontal" />
<TextView
android:id="@+id/dialog_title"
style="@style/titleWithIcon"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/ui_blue_richframe"
android:drawableLeft="@drawable/char_hero"
android:gravity="center_vertical" />
<LinearLayout
android:id="@+id/dialog_description_container"
style="@style/AndorsTrail_Blue_StdFrame"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:orientation="vertical"
android:paddingBottom="5dp"
android:paddingLeft="5dp"
android:paddingRight="5dp"
android:paddingTop="5dp" >
<TextView
android:id="@+id/dialog_description"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</LinearLayout>
<LinearLayout
android:id="@+id/dialog_content_container"
style="@style/AndorsTrail_Blue_StdFrame"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:orientation="vertical"
android:paddingBottom="5dp"
android:paddingLeft="5dp"
android:paddingRight="5dp"
android:paddingTop="5dp" />
<LinearLayout
android:id="@+id/dialog_button_container"
style="@style/AndorsTrail_Blue_StdFrame"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:orientation="horizontal"
android:paddingBottom="5dp"
android:paddingLeft="5dp"
android:paddingRight="5dp"
android:paddingTop="5dp" >
<Button
android:id="@+id/dialog_template_button"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:orientation="horizontal" />
</LinearLayout>

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
style="@style/AndorsTrail_Blue_StdFrame"
style="@style/AndorsTrail_Blue_TabFrame"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
@@ -59,7 +59,6 @@
android:id="@+id/inventorylist_sort_filters"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="5dp"
android:orientation="horizontal"
android:prompt="@string/heroinfo_inventory_sort" />
</LinearLayout>

View File

@@ -3,7 +3,7 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
style="@style/AndorsTrail_Blue_StdFrame">
style="@style/AndorsTrail_Blue_TabFrame">
<LinearLayout
android:layout_width="match_parent"
@@ -31,14 +31,13 @@
android:id="@+id/skillList_category_filters"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="10dp"
android:layout_marginRight="5dp"
android:prompt="@string/heroinfo_skill_categories" />
<Spinner
android:id="@+id/skillList_sort_filters"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="10dp"
android:prompt="@string/heroinfo_skill_sort" />
</LinearLayout>

View File

@@ -4,7 +4,7 @@
android:layout_height="match_parent"
android:layout_gravity="center_horizontal"
android:orientation="vertical"
style="@style/AndorsTrail_Blue_StdFrame" >
style="@style/AndorsTrail_Blue_TabFrame" >
<ScrollView
android:layout_width="match_parent"

View File

@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/ui_blue_stdframe"
android:orientation="vertical"
android:padding="@dimen/dialog_margin" >
<TextView
@@ -14,63 +14,69 @@
android:drawableLeft="@drawable/char_hero"
android:text="@string/levelup_title" />
<LinearLayout
<TextView
android:id="@+id/levelup_description"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
android:background="@drawable/ui_blue_stdframe"
android:text="@string/levelup_description" />
<TextView
android:id="@+id/levelup_description"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/ui_blue_stdframe"
android:text="@string/levelup_description" />
<ScrollView
style="@style/AndorsTrail_Blue_StdFrame"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<LinearLayout
style="@style/AndorsTrail_Blue_StdFrame"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<Button
android:id="@+id/levelup_add_health"
<LinearLayout
style="@style/AndorsTrail_Blue_StdFrame"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/levelup_add_health" />
android:orientation="vertical" >
<Button
android:id="@+id/levelup_add_attackchance"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/levelup_add_attackchance" />
<Button
android:id="@+id/levelup_add_health"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/levelup_add_health" />
<Button
android:id="@+id/levelup_add_attackdamage"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/levelup_add_attackdamage" />
<Button
android:id="@+id/levelup_add_attackchance"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/levelup_add_attackchance" />
<Button
android:id="@+id/levelup_add_blockchance"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/levelup_add_blockchance" />
<Button
android:id="@+id/levelup_add_attackdamage"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/levelup_add_attackdamage" />
<TextView
android:id="@+id/levelup_adds_new_skillpoint"
style="@style/textWithIcon"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:drawableLeft="@drawable/ui_icon_skill"
android:text="@string/levelup_adds_new_skillpoint" />
<Button
android:id="@+id/levelup_add_blockchance"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/levelup_add_blockchance" />
<!-- Workaround http://code.google.com/p/andors-trail/issues/detail?id=242 -->
<TextView
android:id="@+id/levelup_adds_new_skillpoint"
style="@style/textWithIcon"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:drawableLeft="@drawable/ui_icon_skill"
android:text="@string/levelup_adds_new_skillpoint" />
<ListView
android:layout_width="match_parent"
android:layout_height="1dp"
android:background="@null" />
<!-- Workaround http://code.google.com/p/andors-trail/issues/detail?id=242 -->
<ListView
android:layout_width="match_parent"
android:layout_height="1dp"
android:background="@null" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
</ScrollView>
</ScrollView>
</LinearLayout>

View File

@@ -42,7 +42,8 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@android:string/unknownName"
android:layout_marginBottom="5dp"
android:layout_marginTop="2dp"
android:layout_marginBottom="2dp"
/>
</LinearLayout>

View File

@@ -11,7 +11,7 @@
android:layout_height="wrap_content"
android:background="@drawable/ui_blue_richframe"
android:drawableLeft="@drawable/equip_weapon"
android:gravity="center"
android:gravity="start"
android:text="@string/dialog_monsterencounter_title" />
<LinearLayout

View File

@@ -11,7 +11,7 @@
android:layout_height="wrap_content"
android:background="@drawable/ui_blue_richframe"
android:drawableLeft="@drawable/char_hero"
android:gravity="center"
android:gravity="left"
android:text="@string/dialog_monsterencounter_info" />
<ScrollView

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
style="@style/AndorsTrail_Blue_StdFrame"
style="@style/AndorsTrail_Blue_TabFrame"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
@@ -9,11 +9,12 @@
style="@style/AndorsTrail_Blue_StdFrame"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="right"
android:orientation="vertical" >
<Spinner
android:id="@+id/questlog_includecompleted"
android:layout_width="match_parent"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:prompt="@string/questlog_includecompleted_prompt" />
</LinearLayout>

View File

@@ -13,13 +13,11 @@
android:background="@drawable/ui_blue_richframe"
android:drawableLeft="@drawable/ui_icon_equipment"
android:gravity="center"
android:paddingTop="3sp"
android:text="@string/inventory_assign" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="5dp"
android:background="@drawable/ui_blue_stdframe"
android:text="@string/inventory_selectitem"
android:textColor="@color/ui_blue_textbutton_textcolor" />

View File

@@ -10,9 +10,11 @@
android:layout_height="wrap_content"
android:textSize="@dimen/statusbar_text"
android:layout_marginRight="3sp"
android:layout_marginLeft="3sp"
android:shadowDx="1"
android:shadowDy="1"
android:shadowRadius="1"
android:textColor="#fff0f0f0"
android:shadowColor="#000"
/>

View File

@@ -3,13 +3,12 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="left"
style="@style/AndorsTrail_Blue_TabFrame"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="5dp"
android:layout_marginTop="10dp"
style="@style/AndorsTrail_Blue_StdFrame"
android:orientation="horizontal">
@@ -18,16 +17,21 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:drawableLeft="@drawable/ui_icon_coins"
android:drawablePadding="@dimen/boxshape_margin"
android:gravity="center_vertical"
android:layout_gravity="left"
/>
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
/>
<Spinner
android:id="@+id/shoplist_sort_filters"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:layout_marginRight="10dp"
android:orientation="horizontal"
android:layout_gravity="right"
android:prompt="@string/shop_item_sort" />

View File

@@ -11,7 +11,7 @@
android:layout_height="wrap_content"
android:background="@drawable/ui_blue_richframe"
android:drawableLeft="@drawable/ui_icon_skill"
android:gravity="center"
android:gravity="start"
android:text="@string/heroinfo_skill" />
<ScrollView

View File

@@ -13,6 +13,7 @@
<item name="android:dialogTheme">@style/AndorsTrailStyle.Dialog</item>
<item name="android:alertDialogTheme">@style/AndorsTrailStyle.Dialog</item>
<item name="android:alertDialogStyle">@style/AndorsTrailStyle.Dialog.Alert</item>
<item name="android:spinnerItemStyle">@style/AndorsTrail_Blue_SpinnerCollapsed</item>
<!-- <item name="android:toastFrameBackground">@drawable/ui_blue_richframe</item> -->
</style>
@@ -32,6 +33,7 @@
<item name="android:dialogTheme">@style/AndorsTrailStyle.Dialog</item>
<item name="android:alertDialogTheme">@style/AndorsTrailStyle.Dialog.Alert</item>
<item name="android:alertDialogStyle">@style/AndorsTrailStyle.Dialog.Alert</item>
<item name="android:spinnerItemStyle">@style/AndorsTrail_Blue_SpinnerCollapsed</item>
</style>
<style name="AndorsTrail_Blue_TextButton" parent="android:style/Widget.Button">

View File

@@ -553,6 +553,7 @@
<string name="heroinfo_useitem_cost">Use item cost (AP):</string>
<string name="combat_result_monstermoved">%1$s moves.</string>
<string name="combat_log_title">Combat log</string>
<string name="combat_log_noentries">No entries yet.</string>
<string name="localize_resources_from_mo_filename"></string>
<string name="conversation_reward_quest_finished">[Quest completed: \"%1$s\"]</string>
<string name="conversation_reward_quest_updated">[Quest updated: \"%1$s\"]</string>

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<dimen name="smalltext">10sp</dimen>
<dimen name="smalltext">12sp</dimen>
<dimen name="smalltext_buttonheight">35sp</dimen>
<dimen name="titletext">20sp</dimen>

View File

@@ -1,144 +1,162 @@
<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android">
<style name="AndorsTrailStyle" parent="android:Theme">
<item name="android:buttonStyle">@style/AndorsTrail_Blue_TextButton</item>
<item name="android:buttonStyleToggle">@style/AndorsTrail_Blue_ToggleButton</item>
<item name="android:imageButtonStyle">@style/AndorsTrail_Blue_ImageButton</item>
<item name="android:checkboxStyle">@style/AndorsTrail_Blue_Checkbox</item>
<item name="android:radioButtonStyle">@style/AndorsTrail_Blue_RadioButton</item>
<item name="android:listViewStyle">@style/AndorsTrail_Blue_List</item>
<item name="android:spinnerStyle">@style/AndorsTrail_Blue_Spinner</item>
<item name="android:spinnerDropDownItemStyle">@style/AndorsTrail_Blue_SpinnerDropDown</item>
<item name="android:alertDialogStyle">@style/AndorsTrailStyle.Dialog.Alert</item>
</style>
<style name="AndorsTrailStyle.NoBackground" parent="AndorsTrailStyle">
<item name="android:windowBackground">@null</item>
</style>
<style name="AndorsTrailStyle.Dialog" parent="android:Theme.Dialog">
<item name="android:buttonStyle">@style/AndorsTrail_Blue_TextButton</item>
<item name="android:imageButtonStyle">@style/AndorsTrail_Blue_ImageButton</item>
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:background">@null</item>
<item name="android:windowIsTranslucent">true</item>
<item name="android:checkboxStyle">@style/AndorsTrail_Blue_Checkbox</item>
<item name="android:radioButtonStyle">@style/AndorsTrail_Blue_RadioButton</item>
<item name="android:listViewStyle">@style/AndorsTrail_Blue_List</item>
<item name="android:spinnerStyle">@style/AndorsTrail_Blue_Spinner</item>
<item name="android:spinnerDropDownItemStyle">@style/AndorsTrail_Blue_SpinnerDropDown</item>
<item name="android:alertDialogStyle">@style/AndorsTrailStyle.Dialog.Alert</item>
</style>
<style name="AndorsTrailStyle.Dialog.Alert" parent="AndorsTrailStyle.Dialog">
<item name="android:background">@null</item>
<item name="android:windowBackground">@drawable/ui_blue_stdframe</item>
<item name="android:windowTitleStyle">@style/AndorsTrailStyle.DialogWindowTitle</item>
<!-- <item name="android:dialogTitleDecorLayout">@layout/custom_dialog_title_icon</item>
<style name="AndorsTrailStyle" parent="android:Theme">
<item name="android:buttonStyle">@style/AndorsTrail_Blue_TextButton</item>
<item name="android:buttonStyleToggle">@style/AndorsTrail_Blue_ToggleButton</item>
<item name="android:imageButtonStyle">@style/AndorsTrail_Blue_ImageButton</item>
<item name="android:checkboxStyle">@style/AndorsTrail_Blue_Checkbox</item>
<item name="android:radioButtonStyle">@style/AndorsTrail_Blue_RadioButton</item>
<item name="android:listViewStyle">@style/AndorsTrail_Blue_List</item>
<item name="android:spinnerStyle">@style/AndorsTrail_Blue_Spinner</item>
<item name="android:spinnerDropDownItemStyle">@style/AndorsTrail_Blue_SpinnerDropDown</item>
<item name="android:alertDialogStyle">@style/AndorsTrailStyle.Dialog.Alert</item>
<item name="android:spinnerItemStyle">@style/AndorsTrail_Blue_SpinnerCollapsed</item>
</style>
<style name="AndorsTrailStyle.NoBackground" parent="AndorsTrailStyle">
<item name="android:windowBackground">@null</item>
</style>
<style name="AndorsTrailStyle.Dialog" parent="android:Theme.Dialog">
<item name="android:buttonStyle">@style/AndorsTrail_Blue_TextButton</item>
<item name="android:imageButtonStyle">@style/AndorsTrail_Blue_ImageButton</item>
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:background">@null</item>
<item name="android:windowIsTranslucent">true</item>
<item name="android:checkboxStyle">@style/AndorsTrail_Blue_Checkbox</item>
<item name="android:radioButtonStyle">@style/AndorsTrail_Blue_RadioButton</item>
<item name="android:listViewStyle">@style/AndorsTrail_Blue_List</item>
<item name="android:spinnerStyle">@style/AndorsTrail_Blue_Spinner</item>
<item name="android:spinnerDropDownItemStyle">@style/AndorsTrail_Blue_SpinnerDropDown</item>
<item name="android:alertDialogStyle">@style/AndorsTrailStyle.Dialog.Alert</item>
<item name="android:spinnerItemStyle">@style/AndorsTrail_Blue_SpinnerCollapsed</item>
</style>
<style name="AndorsTrailStyle.Dialog.Alert" parent="AndorsTrailStyle.Dialog">
<item name="android:background">@null</item>
<item name="android:windowBackground">@drawable/ui_blue_stdframe</item>
<item name="android:windowTitleStyle">@style/AndorsTrailStyle.DialogWindowTitle</item>
<!--
<item name="android:dialogTitleDecorLayout">@layout/custom_dialog_title_icon</item>
<item name="android:dialogCustomTitleDecorLayout">@layout/custom_dialog_title_icon</item>
<item name="android:dialogTitleIconsDecorLayout">@layout/custom_dialog_title_icon</item> -->
</style>
<style name="AndorsTrailStyle.DialogWindowTitle" > <!-- parent="android:style/DialogWindowTitle" -->
<item name="android:background">@drawable/ui_blue_richframe</item>
<item name="android:textColor">@color/ui_blue_textbutton_textcolor</item>
</style>
<style name="AndorsTrail_Blue_List" parent="android:style/Widget.ListView">
<item name="android:background">@drawable/ui_blue_stdframe</item>
</style>
<style name="AndorsTrail_Blue_TextButton" parent="android:style/Widget.Button">
<item name="android:background">@drawable/ui_blue_textbutton</item>
<item name="android:textColor">@color/ui_blue_textbutton_textcolor</item>
</style>
<style name="AndorsTrail_Blue_ImageButton" parent="android:style/Widget.ImageButton">
<item name="android:background">@drawable/ui_blue_textbutton</item>
</style>
<style name="AndorsTrail_Blue_ToggleButton" parent="android:style/Widget.Button.Toggle">
<item name="android:background">@drawable/ui_blue_togglebutton</item>
</style>
<style name="AndorsTrail_Blue_RadioButton" parent="android:style/Widget.CompoundButton.RadioButton">
<item name="android:button">@drawable/ui_blue_radiobutton</item>
<item name="android:paddingLeft">20dp</item>
</style>
<style name="AndorsTrail_Blue_Checkbox" parent="android:style/Widget.CompoundButton.CheckBox">
<item name="android:button">@drawable/ui_blue_radiobutton</item>
</style>
<style name="AndorsTrail_Blue_Spinner" parent="android:style/Widget.Spinner">
<item name="android:background">@drawable/ui_blue_spinner</item>
<item name="android:textColor">@color/ui_blue_textbutton_textcolor</item>
<item name="android:textAppearance">@color/ui_blue_textbutton_textcolor</item>
</style>
<style name="AndorsTrail_Blue_SpinnerDropDown" parent="android:style/Widget.DropDownItem.Spinner">
<item name="android:background">@drawable/ui_blue_spinner_list_bg</item>
<item name="android:textColor">@color/ui_blue_textbutton_textcolor</item>
<item name="android:checkMark">@drawable/ui_blue_radiobutton</item>
</style>
<style name="AndorsTrail_Blue_RichFrame">
<item name="android:background">@drawable/ui_blue_richframe</item>
</style>
<style name="AndorsTrail_Blue_StdFrame">
<item name="android:background">@drawable/ui_blue_stdframe</item>
</style>
<style name="AndorsTrail_Blue_LightFrame">
<item name="android:background">@drawable/ui_blue_lightframe</item>
</style>
<style name="textWithIcon" parent="android:Widget.TextView">
<item name="android:drawablePadding">@dimen/dialog_iconpadding_right</item>
<item name="android:gravity">center_vertical</item>
</style>
<item name="android:dialogTitleIconsDecorLayout">@layout/custom_dialog_title_icon</item>
-->
</style>
<style name="titleWithIcon" parent="@style/textWithIcon">
<item name="android:textSize">@dimen/titletext</item>
<item name="android:paddingBottom">@dimen/dialog_iconpadding_bottom</item>
<item name="android:textColor">@color/ui_blue_textbutton_textcolor</item>
</style>
<style name="AndorsTrailStyle.DialogWindowTitle"> <!-- parent="android:style/DialogWindowTitle" -->
<item name="android:background">@drawable/ui_blue_richframe</item>
<item name="android:textColor">@color/ui_blue_textbutton_textcolor</item>
</style>
<style name="statsBoxStyle" parent="android:Widget.TextView">
<item name="android:background">@drawable/ui_blue_richframe</item>
<item name="android:drawablePadding">@dimen/boxshape_margin</item>
<item name="android:gravity">center_vertical</item>
<item name="android:layout_margin">@dimen/boxshape_margin</item>
<item name="android:padding">@dimen/boxshape_margin</item>
<item name="android:textSize">@dimen/smalltext</item>
</style>
<style name="AndorsTrail_Blue_List" parent="android:style/Widget.ListView">
<item name="android:background">@drawable/ui_blue_stdframe</item>
</style>
<style name="quickButton" parent="@style/AndorsTrail_Blue_TextButton">
<item name="android:longClickable">true</item>
<item name="android:textSize">@dimen/actionbar_text</item>
<item name="android:layout_width">wrap_content</item>
<item name="android:layout_height">@dimen/smalltext_buttonheight</item>
<item name="android:scaleType">fitCenter</item>
<item name="android:adjustViewBounds">true</item>
<item name="android:padding">5dp</item>
</style>
<style name="AndorsTrail_Blue_TextButton" parent="android:style/Widget.Button">
<item name="android:background">@drawable/ui_blue_textbutton</item>
<item name="android:textColor">@color/ui_blue_textbutton_textcolor</item>
</style>
<style name="toolboxButtonTile" parent="@style/AndorsTrail_Blue_TextButton">
<item name="android:layout_width">wrap_content</item>
<item name="android:layout_height">wrap_content</item>
</style>
<style name="AndorsTrail_Blue_ImageButton" parent="android:style/Widget.ImageButton">
<item name="android:background">@drawable/ui_blue_textbutton</item>
</style>
<style name="toolboxButtonDrawable" parent="@style/AndorsTrail_Blue_TextButton">
<item name="android:layout_width">match_parent</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:padding">0dp</item>
</style>
<style name="AndorsTrail_Blue_ToggleButton" parent="android:style/Widget.Button.Toggle">
<item name="android:background">@drawable/ui_blue_togglebutton</item>
</style>
<style name="traitsinfo_label" parent="android:Widget.TextView">
<item name="android:layout_marginRight">10sp</item>
</style>
<style name="AndorsTrail_Blue_RadioButton" parent="android:style/Widget.CompoundButton.RadioButton">
<item name="android:button">@drawable/ui_blue_radiobutton</item>
<item name="android:paddingLeft">20dp</item>
</style>
<style name="traitsinfo_2linelabel" parent="android:Widget.TextView">
</style>
<style name="AndorsTrail_Blue_Checkbox" parent="android:style/Widget.CompoundButton.CheckBox">
<item name="android:button">@drawable/ui_blue_radiobutton</item>
</style>
<style name="AndorsTrail_Blue_Spinner" parent="android:style/Widget.Spinner">
<item name="android:background">@drawable/ui_blue_spinner</item>
<item name="android:textColor">@color/ui_blue_textbutton_textcolor</item>
<item name="android:textAppearance">@color/ui_blue_textbutton_textcolor</item>
<item name="android:gravity">start</item>
</style>
<style name="AndorsTrail_Blue_SpinnerDropDown" parent="android:style/Widget.DropDownItem.Spinner">
<item name="android:background">@drawable/ui_blue_spinner_list_bg</item>
<item name="android:textColor">@color/ui_blue_textbutton_textcolor</item>
<item name="android:checkMark">@drawable/ui_blue_radiobutton</item>
</style>
<style name="AndorsTrail_Blue_SpinnerCollapsed" parent="android:style/Widget.DropDownItem">
<item name="android:textColor">@color/ui_blue_textbutton_textcolor</item>
</style>
<style name="AndorsTrail_Blue_RichFrame">
<item name="android:background">@drawable/ui_blue_richframe</item>
</style>
<style name="AndorsTrail_Blue_StdFrame">
<item name="android:background">@drawable/ui_blue_stdframe</item>
</style>
<style name="AndorsTrail_Blue_TabFrame">
<item name="android:background">@drawable/ui_blue_tabframe</item>
</style>
<style name="AndorsTrail_Blue_LightFrame">
<item name="android:background">@drawable/ui_blue_lightframe</item>
</style>
<style name="textWithIcon" parent="android:Widget.TextView">
<item name="android:drawablePadding">@dimen/dialog_iconpadding_right</item>
<item name="android:gravity">center_vertical</item>
</style>
<style name="titleWithIcon" parent="@style/textWithIcon">
<item name="android:textSize">@dimen/titletext</item>
<item name="android:paddingBottom">@dimen/dialog_iconpadding_bottom</item>
<item name="android:textColor">@color/ui_blue_textbutton_textcolor</item>
</style>
<style name="statsBoxStyle" parent="android:Widget.TextView">
<item name="android:background">@drawable/ui_blue_richframe</item>
<item name="android:drawablePadding">@dimen/boxshape_margin</item>
<item name="android:gravity">center_vertical</item>
<item name="android:layout_margin">@dimen/boxshape_margin</item>
<item name="android:padding">@dimen/boxshape_margin</item>
<item name="android:textSize">@dimen/smalltext</item>
</style>
<style name="quickButton" parent="@style/AndorsTrail_Blue_TextButton">
<item name="android:longClickable">true</item>
<item name="android:textSize">@dimen/actionbar_text</item>
<item name="android:layout_width">wrap_content</item>
<item name="android:layout_height">@dimen/smalltext_buttonheight</item>
<item name="android:scaleType">fitCenter</item>
<item name="android:adjustViewBounds">true</item>
<item name="android:padding">5dp</item>
</style>
<style name="toolboxButtonTile" parent="@style/AndorsTrail_Blue_TextButton">
<item name="android:layout_width">wrap_content</item>
<item name="android:layout_height">wrap_content</item>
</style>
<style name="toolboxButtonDrawable" parent="@style/AndorsTrail_Blue_TextButton">
<item name="android:layout_width">match_parent</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:padding">0dp</item>
</style>
<style name="traitsinfo_label" parent="android:Widget.TextView">
<item name="android:layout_marginRight">10sp</item>
</style>
<style name="traitsinfo_2linelabel" parent="android:Widget.TextView"></style>
<style name="traitsinfo_2linevalue" parent="android:Widget.TextView">
<item name="android:layout_marginLeft">30sp</item>
</style>
<style name="traitsinfo_2linevalue" parent="android:Widget.TextView">
<item name="android:layout_marginLeft">30sp</item>
</style>
</resources>

View File

@@ -1,5 +1,10 @@
package com.gpl.rpg.AndorsTrail;
import java.util.Locale;
import com.gpl.rpg.AndorsTrail.context.ControllerContext;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import android.app.Activity;
import android.app.Application;
import android.content.Context;
@@ -7,10 +12,6 @@ import android.content.res.Configuration;
import android.content.res.Resources;
import android.view.Window;
import android.view.WindowManager;
import com.gpl.rpg.AndorsTrail.context.ControllerContext;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import java.util.Locale;
public final class AndorsTrailApplication extends Application {

View File

@@ -1,25 +1,20 @@
package com.gpl.rpg.AndorsTrail;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.DialogInterface.OnDismissListener;
import android.content.Intent;
import android.graphics.drawable.BitmapDrawable;
import android.net.Uri;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.ContextThemeWrapper;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.Toast;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import com.gpl.rpg.AndorsTrail.activity.*;
import com.gpl.rpg.AndorsTrail.activity.ActorConditionInfoActivity;
import com.gpl.rpg.AndorsTrail.activity.BulkSelectionInterface;
import com.gpl.rpg.AndorsTrail.activity.ConversationActivity;
import com.gpl.rpg.AndorsTrail.activity.CustomDialog;
import com.gpl.rpg.AndorsTrail.activity.ItemInfoActivity;
import com.gpl.rpg.AndorsTrail.activity.LevelUpActivity;
import com.gpl.rpg.AndorsTrail.activity.LoadSaveActivity;
import com.gpl.rpg.AndorsTrail.activity.MainActivity;
import com.gpl.rpg.AndorsTrail.activity.MonsterEncounterActivity;
import com.gpl.rpg.AndorsTrail.activity.MonsterInfoActivity;
import com.gpl.rpg.AndorsTrail.activity.SkillInfoActivity;
import com.gpl.rpg.AndorsTrail.activity.fragment.StartScreenActivity_MainMenu;
import com.gpl.rpg.AndorsTrail.context.ControllerContext;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
@@ -33,9 +28,22 @@ import com.gpl.rpg.AndorsTrail.model.map.MapObject;
import com.gpl.rpg.AndorsTrail.resource.tiles.TileManager;
import com.gpl.rpg.AndorsTrail.view.ItemContainerAdapter;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import android.app.Activity;
import android.app.Dialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.DialogInterface.OnDismissListener;
import android.content.Intent;
import android.graphics.drawable.BitmapDrawable;
import android.net.Uri;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.Toast;
public final class Dialogs {
@@ -44,14 +52,14 @@ public final class Dialogs {
}
private static void showDialogAndPause(Dialog d, final ControllerContext context, final OnDismissListener onDismiss) {
context.gameRoundController.pause();
d.setOnDismissListener(new OnDismissListener() {
CustomDialog.setDismissListener(d, new OnDismissListener() {
@Override
public void onDismiss(DialogInterface arg0) {
if (onDismiss != null) onDismiss.onDismiss(arg0);
context.gameRoundController.resume();
}
});
d.show();
CustomDialog.show(d);
}
public static void showKeyArea(final MainActivity currentActivity, final ControllerContext context, String phraseID) {
@@ -180,7 +188,7 @@ public final class Dialogs {
private static void showLoot(final MainActivity mainActivity, final ControllerContext controllers, final WorldContext world, final Loot combinedLoot, final Iterable<Loot> lootBags, final int title, final String msg) {
final ListView itemList = new ListView(mainActivity);
itemList.setLayoutParams(new ListView.LayoutParams(ListView.LayoutParams.MATCH_PARENT, ListView.LayoutParams.WRAP_CONTENT));
itemList.setPadding(20, 0, 20, 20);
// itemList.setPadding(20, 0, 20, 20);
itemList.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View v, int position, long id) {
@@ -202,24 +210,41 @@ public final class Dialogs {
});
itemList.setAdapter(new ItemContainerAdapter(mainActivity, world.tileManager, combinedLoot.items, world.model.player));
AlertDialog.Builder db = new AlertDialog.Builder(new ContextThemeWrapper(mainActivity, R.style.AndorsTrailStyle))
.setTitle(title)
.setMessage(msg)
.setIcon(new BitmapDrawable(mainActivity.getResources(), world.tileManager.preloadedTiles.getBitmap(TileManager.iconID_groundbag)))
.setNegativeButton(R.string.dialog_close, null)
.setView(itemList);
// AlertDialog.Builder db = new AlertDialog.Builder(new ContextThemeWrapper(mainActivity, R.style.AndorsTrailStyle))
// .setTitle(title)
// .setMessage(msg)
// .setIcon(new BitmapDrawable(mainActivity.getResources(), world.tileManager.preloadedTiles.getBitmap(TileManager.iconID_groundbag)))
// .setNegativeButton(R.string.dialog_close, null)
// .setView(itemList);
if (!combinedLoot.items.isEmpty()) {
db.setPositiveButton(R.string.dialog_loot_pickall, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
controllers.itemController.pickupAll(lootBags);
}
});
}
// if (!combinedLoot.items.isEmpty()) {
// db.setPositiveButton(R.string.dialog_loot_pickall, new DialogInterface.OnClickListener() {
// @Override
// public void onClick(DialogInterface dialog, int which) {
// controllers.itemController.pickupAll(lootBags);
// }
// });
// }
//
// final Dialog d = db.create();
final Dialog d = db.create();
final Dialog d = CustomDialog.createDialog(mainActivity,
mainActivity.getResources().getString(title),
new BitmapDrawable(mainActivity.getResources(), world.tileManager.preloadedTiles.getBitmap(TileManager.iconID_groundbag)),
msg,
combinedLoot.items.isEmpty() ? null : itemList,
true);
CustomDialog.addButton(d, R.string.dialog_loot_pickall, new View.OnClickListener() {
@Override
public void onClick(View v) {
controllers.itemController.pickupAll(lootBags);
}
});
CustomDialog.addDismissButton(d, R.string.dialog_close);
showDialogAndPause(d, controllers, new OnDismissListener() {
@Override
public void onDismiss(DialogInterface arg0) {
@@ -245,36 +270,74 @@ public final class Dialogs {
}
public static void showConfirmRest(final Activity currentActivity, final ControllerContext controllerContext, final MapObject area) {
Dialog d = new AlertDialog.Builder(new ContextThemeWrapper(currentActivity, R.style.AndorsTrailStyle))
.setTitle(R.string.dialog_rest_title)
.setMessage(R.string.dialog_rest_confirm_message)
.setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {
// Dialog d = new AlertDialog.Builder(new ContextThemeWrapper(currentActivity, R.style.AndorsTrailStyle))
// .setTitle(R.string.dialog_rest_title)
// .setMessage(R.string.dialog_rest_confirm_message)
// .setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {
// @Override
// public void onClick(DialogInterface dialog, int which) {
// controllerContext.mapController.rest(area);
// }
// })
//
// .setNegativeButton(android.R.string.no, null)
// .create();
final Dialog d = CustomDialog.createDialog(currentActivity,
currentActivity.getResources().getString(R.string.dialog_rest_title),
null,
currentActivity.getResources().getString(R.string.dialog_rest_confirm_message),
null,
true);
CustomDialog.addButton(d, android.R.string.yes, new View.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
public void onClick(View v) {
controllerContext.mapController.rest(area);
}
})
.setNegativeButton(android.R.string.no, null)
.create();
});
CustomDialog.addDismissButton(d, android.R.string.no);
showDialogAndPause(d, controllerContext);
}
public static void showRested(final Activity currentActivity, final ControllerContext controllerContext) {
Dialog d = new AlertDialog.Builder(new ContextThemeWrapper(currentActivity, R.style.AndorsTrailStyle))
.setTitle(R.string.dialog_rest_title)
.setMessage(R.string.dialog_rest_message)
.setNeutralButton(android.R.string.ok, null)
.create();
// Dialog d = new AlertDialog.Builder(new ContextThemeWrapper(currentActivity, R.style.AndorsTrailStyle))
// .setTitle(R.string.dialog_rest_title)
// .setMessage(R.string.dialog_rest_message)
// .setNeutralButton(android.R.string.ok, null)
// .create();
final Dialog d = CustomDialog.createDialog(currentActivity,
currentActivity.getResources().getString(R.string.dialog_rest_title),
null,
currentActivity.getResources().getString(R.string.dialog_rest_message),
null,
true);
CustomDialog.addDismissButton(d, android.R.string.ok);
showDialogAndPause(d, controllerContext);
}
public static void showNewVersion(final Activity currentActivity) {
new AlertDialog.Builder(new ContextThemeWrapper(currentActivity, R.style.AndorsTrailStyle))
.setTitle(R.string.dialog_newversion_title)
.setMessage(R.string.dialog_newversion_message)
.setNeutralButton(android.R.string.ok, null)
.show();
// new AlertDialog.Builder(new ContextThemeWrapper(currentActivity, R.style.AndorsTrailStyle))
// .setTitle(R.string.dialog_newversion_title)
// .setMessage(R.string.dialog_newversion_message)
// .setNeutralButton(android.R.string.ok, null)
// .show();
final Dialog d = CustomDialog.createDialog(currentActivity,
currentActivity.getResources().getString(R.string.dialog_newversion_title),
null,
currentActivity.getResources().getString(R.string.dialog_newversion_message),
null,
true);
CustomDialog.addDismissButton(d, android.R.string.ok);
CustomDialog.show(d);
}
public static boolean showSave(final Activity mainActivity, final ControllerContext controllerContext, final WorldContext world) {
@@ -337,21 +400,37 @@ public final class Dialogs {
public static void showCombatLog(final Context context, final ControllerContext controllerContext, final WorldContext world) {
final String[] combatLogMessages = world.model.combatLog.getAllMessages();
final ListView itemList = new ListView(context);
itemList.setLayoutParams(new ListView.LayoutParams(ListView.LayoutParams.MATCH_PARENT, ListView.LayoutParams.WRAP_CONTENT));
itemList.setPadding(20, 0, 20, 20);
itemList.setStackFromBottom(true);
itemList.setTranscriptMode(ListView.TRANSCRIPT_MODE_ALWAYS_SCROLL);
itemList.setChoiceMode(ListView.CHOICE_MODE_NONE);
itemList.setAdapter(new ArrayAdapter<String>(context, R.layout.combatlog_row, android.R.id.text1, combatLogMessages));
ListView itemList = null;
String msg = null;
if (combatLogMessages.length > 0) {
itemList = new ListView(context);
itemList.setLayoutParams(new ListView.LayoutParams(ListView.LayoutParams.MATCH_PARENT, ListView.LayoutParams.WRAP_CONTENT));
itemList.setPadding(20, 0, 20, 20);
itemList.setStackFromBottom(true);
itemList.setTranscriptMode(ListView.TRANSCRIPT_MODE_ALWAYS_SCROLL);
itemList.setChoiceMode(ListView.CHOICE_MODE_NONE);
itemList.setAdapter(new ArrayAdapter<String>(context, R.layout.combatlog_row, android.R.id.text1, combatLogMessages));
} else {
msg = context.getResources().getString(R.string.combat_log_noentries);
}
final Dialog d = new AlertDialog.Builder(new ContextThemeWrapper(context, R.style.AndorsTrailStyle))
.setTitle(R.string.combat_log_title)
.setIcon(R.drawable.ui_icon_combat)
.setNegativeButton(R.string.dialog_close, null)
.setView(itemList)
.create();
// final Dialog d = new AlertDialog.Builder(new ContextThemeWrapper(context, R.style.AndorsTrailStyle))
// .setTitle(R.string.combat_log_title)
// .setIcon(R.drawable.ui_icon_combat)
// .setNegativeButton(R.string.dialog_close, null)
// .setView(itemList)
// .create();
final Dialog d = CustomDialog.createDialog(context,
context.getResources().getString(R.string.combat_log_title),
context.getResources().getDrawable(R.drawable.ui_icon_combat),
msg,
itemList,
true);
CustomDialog.addDismissButton(d, R.string.dialog_close);
showDialogAndPause(d, controllerContext);
}
}

View File

@@ -1,15 +1,16 @@
package com.gpl.rpg.AndorsTrail;
import android.content.Context;
import android.content.res.Resources;
import android.os.AsyncTask;
import java.lang.ref.WeakReference;
import com.gpl.rpg.AndorsTrail.context.ControllerContext;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.model.ModelContainer;
import com.gpl.rpg.AndorsTrail.resource.ResourceLoader;
import com.gpl.rpg.AndorsTrail.savegames.Savegames;
import java.lang.ref.WeakReference;
import android.content.Context;
import android.content.res.Resources;
import android.os.AsyncTask;
public final class WorldSetup {

View File

@@ -1,5 +1,8 @@
package com.gpl.rpg.AndorsTrail.activity;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.R;
import android.app.Activity;
import android.content.res.Resources;
import android.graphics.drawable.Drawable;
@@ -11,8 +14,6 @@ import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.R;
public final class AboutActivity extends Activity implements ImageGetter {

View File

@@ -1,5 +1,12 @@
package com.gpl.rpg.AndorsTrail.activity;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.model.ability.ActorConditionType;
import com.gpl.rpg.AndorsTrail.view.AbilityModifierInfoView;
import com.gpl.rpg.AndorsTrail.view.ItemEffectsView_OnUse;
import android.app.Activity;
import android.content.res.Resources;
import android.os.Bundle;
@@ -9,12 +16,6 @@ import android.view.Window;
import android.widget.Button;
import android.widget.LinearLayout;
import android.widget.TextView;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.model.ability.ActorConditionType;
import com.gpl.rpg.AndorsTrail.view.AbilityModifierInfoView;
import com.gpl.rpg.AndorsTrail.view.ItemEffectsView_OnUse;
public final class ActorConditionInfoActivity extends Activity {

View File

@@ -1,8 +1,13 @@
package com.gpl.rpg.AndorsTrail.activity;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.controller.ItemController;
import com.gpl.rpg.AndorsTrail.model.item.ItemType;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.app.Dialog;
import android.content.Intent;
import android.content.res.Resources;
import android.os.Bundle;
@@ -17,11 +22,6 @@ import android.widget.Button;
import android.widget.EditText;
import android.widget.SeekBar;
import android.widget.TextView;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.controller.ItemController;
import com.gpl.rpg.AndorsTrail.model.item.ItemType;
/**
* @author ejwessel
@@ -192,18 +192,33 @@ public final class BulkSelectionInterface extends Activity implements TextWatche
final String displayType = ItemInfoActivity.getDisplayTypeString(res, itemType).toLowerCase();
final String message = res.getString(R.string.bulkselection_sell_confirmation, itemType.getName(world.model.player), displayType);
new AlertDialog.Builder(v.getContext())
.setIcon(android.R.drawable.ic_dialog_info)
.setTitle(R.string.bulkselection_sell_confirmation_title)
.setMessage(message)
.setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {
// new AlertDialog.Builder(v.getContext())
// .setIcon(android.R.drawable.ic_dialog_info)
// .setTitle(R.string.bulkselection_sell_confirmation_title)
// .setMessage(message)
// .setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {
// @Override
// public void onClick(DialogInterface dialog, int which) {
// itemsResult(intent);
// }
// })
// .setNegativeButton(android.R.string.no, null)
// .show();
final Dialog d = CustomDialog.createDialog(v.getContext(),
v.getContext().getResources().getString(R.string.bulkselection_sell_confirmation_title),
v.getContext().getResources().getDrawable(android.R.drawable.ic_dialog_info),
message,
null,
true);
CustomDialog.addButton(d, android.R.string.yes, new View.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
public void onClick(View v) {
itemsResult(intent);
}
})
.setNegativeButton(android.R.string.no, null)
.show();
});
CustomDialog.addDismissButton(d, android.R.string.no);
CustomDialog.show(d);
} else {
itemsResult(intent);
}

View File

@@ -1,5 +1,22 @@
package com.gpl.rpg.AndorsTrail.activity;
import java.util.ArrayList;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.Dialogs;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.controller.ConversationController;
import com.gpl.rpg.AndorsTrail.model.actor.Actor;
import com.gpl.rpg.AndorsTrail.model.actor.Monster;
import com.gpl.rpg.AndorsTrail.model.actor.Player;
import com.gpl.rpg.AndorsTrail.model.conversation.Reply;
import com.gpl.rpg.AndorsTrail.model.item.Loot;
import com.gpl.rpg.AndorsTrail.model.quest.Quest;
import com.gpl.rpg.AndorsTrail.model.quest.QuestLogEntry;
import com.gpl.rpg.AndorsTrail.model.quest.QuestProgress;
import com.gpl.rpg.AndorsTrail.resource.tiles.TileManager;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
@@ -16,26 +33,15 @@ import android.view.View.OnClickListener;
import android.view.View.OnKeyListener;
import android.view.ViewGroup;
import android.view.Window;
import android.widget.*;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.CompoundButton;
import android.widget.CompoundButton.OnCheckedChangeListener;
import android.widget.ListView;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.TextView;
import android.widget.TextView.BufferType;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.Dialogs;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.controller.ConversationController;
import com.gpl.rpg.AndorsTrail.model.actor.Actor;
import com.gpl.rpg.AndorsTrail.model.actor.Monster;
import com.gpl.rpg.AndorsTrail.model.actor.Player;
import com.gpl.rpg.AndorsTrail.model.conversation.Reply;
import com.gpl.rpg.AndorsTrail.model.item.Loot;
import com.gpl.rpg.AndorsTrail.model.quest.Quest;
import com.gpl.rpg.AndorsTrail.model.quest.QuestLogEntry;
import com.gpl.rpg.AndorsTrail.model.quest.QuestProgress;
import com.gpl.rpg.AndorsTrail.resource.tiles.TileManager;
import java.util.ArrayList;
import java.util.ListIterator;
public final class ConversationActivity
extends Activity

View File

@@ -0,0 +1,111 @@
package com.gpl.rpg.AndorsTrail.activity;
import com.gpl.rpg.AndorsTrail.R;
import android.app.Dialog;
import android.content.Context;
import android.content.DialogInterface.OnDismissListener;
import android.graphics.drawable.Drawable;
import android.view.ContextThemeWrapper;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.view.ViewGroup.LayoutParams;
import android.view.Window;
import android.widget.Button;
import android.widget.TextView;
public class CustomDialog {
private static final int MIN_RES_ID=0x7f040000;
public static Dialog createDialog(final Context context, String title, Drawable icon, String desc, View content, boolean hasButtons) {
Dialog dialog = new Dialog(new ContextThemeWrapper(context, R.style.AndorsTrailStyle_Dialog));
dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
dialog.setContentView(R.layout.custom_dialog_title_icon);
dialog.getWindow().setBackgroundDrawableResource(android.R.color.transparent);
TextView titleView = (TextView) dialog.findViewById(R.id.dialog_title);
if (title != null || icon != null) {
titleView.setText(title);
titleView.setCompoundDrawablesWithIntrinsicBounds(icon, null, null, null);
titleView.setVisibility(View.VISIBLE);
} else {
titleView.setVisibility(View.GONE);
}
TextView descView = (TextView) dialog.findViewById(R.id.dialog_description);
ViewGroup descHolder = (ViewGroup) dialog.findViewById(R.id.dialog_description_container);
if (desc != null) {
descView.setText(desc);
descHolder.setVisibility(View.VISIBLE);
descView.setVisibility(View.VISIBLE);
} else {
descHolder.setVisibility(View.GONE);
}
ViewGroup contentHolder = (ViewGroup) dialog.findViewById(R.id.dialog_content_container);
if (content != null) {
contentHolder.addView(content);
contentHolder.setVisibility(View.VISIBLE);
} else {
contentHolder.setVisibility(View.GONE);
}
ViewGroup buttonsHolder = (ViewGroup) dialog.findViewById(R.id.dialog_button_container);
if (hasButtons) {
buttonsHolder.setVisibility(View.VISIBLE);
} else {
buttonsHolder.setVisibility(View.GONE);
}
return dialog;
}
public static Dialog addButton(final Dialog dialog, int textId, final OnClickListener listener) {
Button template = (Button) dialog.findViewById(R.id.dialog_template_button);
LayoutParams params = template.getLayoutParams();
ViewGroup buttonsHolder = (ViewGroup) dialog.findViewById(R.id.dialog_button_container);
Button b = new Button(dialog.getContext());
b.setLayoutParams(params);
b.setText(textId);
b.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
listener.onClick(v);
dialog.dismiss();
}
});
buttonsHolder.addView(b, params);
return dialog;
}
public static Dialog addDismissButton(final Dialog dialog, int textId) {
return CustomDialog.addButton(dialog, textId, new OnClickListener() {
@Override
public void onClick(View v) {
dialog.dismiss();
}
});
}
public static Dialog setDismissListener(Dialog dialog, OnDismissListener listener) {
dialog.setOnDismissListener(listener);
return dialog;
}
public static void show(Dialog dialog) {
dialog.findViewById(R.id.dialog_template_button).setVisibility(View.GONE);
dialog.show();
}
}

View File

@@ -1,5 +1,12 @@
package com.gpl.rpg.AndorsTrail.activity;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.context.ControllerContext;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.model.item.ItemType;
import com.gpl.rpg.AndorsTrail.model.map.PredefinedMap;
import android.content.Context;
import android.content.res.Resources;
import android.view.View;
@@ -7,12 +14,6 @@ import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.RelativeLayout;
import android.widget.Toast;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.context.ControllerContext;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.model.item.ItemType;
import com.gpl.rpg.AndorsTrail.model.map.PredefinedMap;
public final class DebugInterface {
private final ControllerContext controllerContext;

View File

@@ -1,5 +1,15 @@
package com.gpl.rpg.AndorsTrail.activity;
import java.io.File;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.controller.WorldMapController;
import com.gpl.rpg.AndorsTrail.model.map.WorldMapSegment;
import com.gpl.rpg.AndorsTrail.model.map.WorldMapSegment.WorldMapSegmentMap;
import com.gpl.rpg.AndorsTrail.util.L;
import android.annotation.SuppressLint;
import android.app.Activity;
import android.os.Build;
@@ -10,15 +20,6 @@ import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.Button;
import android.widget.Toast;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.controller.WorldMapController;
import com.gpl.rpg.AndorsTrail.model.map.WorldMapSegment;
import com.gpl.rpg.AndorsTrail.model.map.WorldMapSegment.WorldMapSegmentMap;
import com.gpl.rpg.AndorsTrail.util.L;
import java.io.File;
public final class DisplayWorldMapActivity extends Activity {
private WorldContext world;

View File

@@ -1,11 +1,5 @@
package com.gpl.rpg.AndorsTrail.activity;
import android.content.res.Resources;
import android.os.Bundle;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentTabHost;
import android.widget.ImageView;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.activity.fragment.HeroinfoActivity_Inventory;
@@ -14,6 +8,12 @@ import com.gpl.rpg.AndorsTrail.activity.fragment.HeroinfoActivity_Skills;
import com.gpl.rpg.AndorsTrail.activity.fragment.HeroinfoActivity_Stats;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import android.content.res.Resources;
import android.os.Bundle;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentTabHost;
import android.widget.ImageView;
public final class HeroinfoActivity extends FragmentActivity {
private WorldContext world;

View File

@@ -1,5 +1,13 @@
package com.gpl.rpg.AndorsTrail.activity;
import java.util.Collections;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.model.item.ItemType;
import com.gpl.rpg.AndorsTrail.view.ItemEffectsView;
import android.app.Activity;
import android.content.Intent;
import android.content.res.Resources;
@@ -8,13 +16,6 @@ import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.model.item.ItemType;
import com.gpl.rpg.AndorsTrail.view.ItemEffectsView;
import java.util.Collections;
public final class ItemInfoActivity extends Activity {

View File

@@ -1,5 +1,13 @@
package com.gpl.rpg.AndorsTrail.activity;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.context.ControllerContext;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.controller.ActorStatsController;
import com.gpl.rpg.AndorsTrail.controller.Constants;
import com.gpl.rpg.AndorsTrail.model.actor.Player;
import android.app.Activity;
import android.content.res.Resources;
import android.os.Bundle;
@@ -8,13 +16,6 @@ import android.view.View.OnClickListener;
import android.view.Window;
import android.widget.Button;
import android.widget.TextView;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.context.ControllerContext;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.controller.ActorStatsController;
import com.gpl.rpg.AndorsTrail.controller.Constants;
import com.gpl.rpg.AndorsTrail.model.actor.Player;
public final class LevelUpActivity extends Activity {
private WorldContext world;

View File

@@ -1,16 +1,7 @@
package com.gpl.rpg.AndorsTrail.activity;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.view.ViewGroup.LayoutParams;
import android.widget.Button;
import android.widget.TextView;
import java.util.Collections;
import java.util.List;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.AndorsTrailPreferences;
@@ -20,8 +11,16 @@ import com.gpl.rpg.AndorsTrail.resource.tiles.TileManager;
import com.gpl.rpg.AndorsTrail.savegames.Savegames;
import com.gpl.rpg.AndorsTrail.savegames.Savegames.FileHeader;
import java.util.Collections;
import java.util.List;
import android.app.Activity;
import android.app.Dialog;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.view.ViewGroup.LayoutParams;
import android.widget.Button;
import android.widget.TextView;
public final class LoadSaveActivity extends Activity implements OnClickListener {
private boolean isLoading = true;
@@ -132,18 +131,34 @@ public final class LoadSaveActivity extends Activity implements OnClickListener
final String title =
getString(R.string.loadsave_save_overwrite_confirmation_title) + ' '
+ getString(R.string.loadsave_save_overwrite_confirmation_slot, slot);
new AlertDialog.Builder(this)
.setIcon(android.R.drawable.ic_dialog_alert)
.setTitle(title)
.setMessage(message)
.setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {
// new AlertDialog.Builder(this)
// .setIcon(android.R.drawable.ic_dialog_alert)
// .setTitle(title)
// .setMessage(message)
// .setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {
// @Override
// public void onClick(DialogInterface dialog, int which) {
// loadsave(slot);
// }
// })
// .setNegativeButton(android.R.string.no, null)
// .show();
final Dialog d = CustomDialog.createDialog(this,
title,
getResources().getDrawable(android.R.drawable.ic_dialog_alert),
message,
null,
true);
CustomDialog.addButton(d, android.R.string.yes, new View.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
public void onClick(View v) {
loadsave(slot);
}
})
.setNegativeButton(android.R.string.no, null)
.show();
});
CustomDialog.addDismissButton(d, android.R.string.no);
CustomDialog.show(d);
} else {
loadsave(slot);
}

View File

@@ -1,13 +1,5 @@
package com.gpl.rpg.AndorsTrail.activity;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
import android.app.ProgressDialog;
import android.content.DialogInterface;
import android.content.DialogInterface.OnDismissListener;
import android.content.Intent;
import android.os.Bundle;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.WorldSetup;
@@ -15,6 +7,14 @@ import com.gpl.rpg.AndorsTrail.WorldSetup.OnResourcesLoadedListener;
import com.gpl.rpg.AndorsTrail.WorldSetup.OnSceneLoadedListener;
import com.gpl.rpg.AndorsTrail.savegames.Savegames;
import android.app.Activity;
import android.app.Dialog;
import android.app.ProgressDialog;
import android.content.DialogInterface;
import android.content.DialogInterface.OnDismissListener;
import android.content.Intent;
import android.os.Bundle;
public final class LoadingActivity extends Activity implements OnResourcesLoadedListener, OnSceneLoadedListener {
private WorldSetup setup;
@@ -65,17 +65,28 @@ public final class LoadingActivity extends Activity implements OnResourcesLoaded
}
private void showLoadingFailedDialog(int messageResourceID) {
Dialog d = new AlertDialog.Builder(this)
.setTitle(R.string.dialog_loading_failed_title)
.setMessage(messageResourceID)
.setNeutralButton(android.R.string.ok, null)
.create();
d.setOnDismissListener(new OnDismissListener() {
// Dialog d = new AlertDialog.Builder(this)
// .setTitle(R.string.dialog_loading_failed_title)
// .setMessage(messageResourceID)
// .setNeutralButton(android.R.string.ok, null)
// .create();
// d.setOnDismissListener(new OnDismissListener() {
// @Override
// public void onDismiss(DialogInterface dialog) {
// LoadingActivity.this.finish();
// }
// });
// d.show();
final Dialog d = CustomDialog.createDialog(this, getResources().getString(R.string.dialog_loading_failed_title), null, getResources().getString(messageResourceID), null, true);
CustomDialog.addDismissButton(d, android.R.string.ok);
CustomDialog.setDismissListener(d, new OnDismissListener() {
@Override
public void onDismiss(DialogInterface dialog) {
LoadingActivity.this.finish();
}
});
d.show();
CustomDialog.show(d);
}
}

View File

@@ -3,21 +3,6 @@ package com.gpl.rpg.AndorsTrail.activity;
import java.lang.ref.WeakReference;
import java.util.Collection;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.Intent;
import android.os.Bundle;
import android.view.ContextThemeWrapper;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.View.OnLongClickListener;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ListView;
import android.widget.RelativeLayout;
import android.widget.TextView;
import android.widget.Toast;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.AndorsTrailPreferences;
import com.gpl.rpg.AndorsTrail.Dialogs;
@@ -51,6 +36,20 @@ import com.gpl.rpg.AndorsTrail.view.StatusView;
import com.gpl.rpg.AndorsTrail.view.ToolboxView;
import com.gpl.rpg.AndorsTrail.view.VirtualDpadView;
import android.app.Activity;
import android.app.Dialog;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.View.OnLongClickListener;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ListView;
import android.widget.RelativeLayout;
import android.widget.TextView;
import android.widget.Toast;
public final class MainActivity
extends Activity
implements
@@ -232,19 +231,22 @@ public final class MainActivity
final int buttonId = ((QuickButton)v).getIndex();
final AlertDialog dialog = new AlertDialog.Builder(new ContextThemeWrapper(v.getContext(), R.style.AndorsTrailStyle_Dialog)).create();
// final AlertDialog dialog = new AlertDialog.Builder(new ContextThemeWrapper(v.getContext(), R.style.AndorsTrailStyle_Dialog)).create();
View view = getLayoutInflater().inflate(R.layout.quickbuttons_usable_inventory, null);
ListView lv = (ListView) view.findViewById(R.id.quickbuttons_assignlist);
TileCollection wornTiles = world.tileManager.loadTilesFor(world.model.player.inventory, getResources());
final ItemContainerAdapter inventoryListAdapter = new QuickslotsItemContainerAdapter(lv.getContext(), world.tileManager, world.model.player.inventory.usableItems(), world.model.player, wornTiles);
lv.setAdapter(inventoryListAdapter);
final Dialog d = CustomDialog.createDialog(v.getContext(), null, null, null, lv, false);
lv.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
controllers.itemController.setQuickItem(inventoryListAdapter.getItem(position).itemType, buttonId);
dialog.dismiss();
d.dismiss();
}
});
@@ -257,9 +259,11 @@ public final class MainActivity
// }
// });
dialog.setView(view);
dialog.setCancelable(true);
dialog.show();
CustomDialog.show(d);
//
// dialog.setView(view);
// dialog.setCancelable(true);
// dialog.show();
}
return true;
}

View File

@@ -1,5 +1,12 @@
package com.gpl.rpg.AndorsTrail.activity;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.Dialogs;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.context.ControllerContext;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.model.actor.Monster;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
@@ -7,12 +14,6 @@ import android.view.View.OnClickListener;
import android.view.Window;
import android.widget.Button;
import android.widget.TextView;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.Dialogs;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.context.ControllerContext;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.model.actor.Monster;
public final class MonsterEncounterActivity extends Activity {

View File

@@ -1,13 +1,5 @@
package com.gpl.rpg.AndorsTrail.activity;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.view.Window;
import android.widget.Button;
import android.widget.TextView;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.Dialogs;
import com.gpl.rpg.AndorsTrail.R;
@@ -18,6 +10,15 @@ import com.gpl.rpg.AndorsTrail.view.ItemEffectsView;
import com.gpl.rpg.AndorsTrail.view.RangeBar;
import com.gpl.rpg.AndorsTrail.view.TraitsInfoView;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.view.Window;
import android.widget.Button;
import android.widget.TextView;
public final class MonsterInfoActivity extends Activity {
private WorldContext world;

View File

@@ -1,8 +1,9 @@
package com.gpl.rpg.AndorsTrail.activity;
import com.gpl.rpg.AndorsTrail.R;
import android.os.Bundle;
import android.preference.PreferenceActivity;
import com.gpl.rpg.AndorsTrail.R;
public final class Preferences extends PreferenceActivity {
@Override

View File

@@ -1,13 +1,14 @@
package com.gpl.rpg.AndorsTrail.activity;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.activity.fragment.ShopActivity_Buy;
import com.gpl.rpg.AndorsTrail.activity.fragment.ShopActivity_Sell;
import android.content.res.Resources;
import android.os.Bundle;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentTabHost;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.activity.fragment.ShopActivity_Buy;
import com.gpl.rpg.AndorsTrail.activity.fragment.ShopActivity_Sell;
public final class ShopActivity extends FragmentActivity {

View File

@@ -1,5 +1,14 @@
package com.gpl.rpg.AndorsTrail.activity;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.controller.SkillController;
import com.gpl.rpg.AndorsTrail.model.ability.SkillCollection;
import com.gpl.rpg.AndorsTrail.model.ability.SkillInfo;
import com.gpl.rpg.AndorsTrail.model.ability.SkillInfo.SkillLevelRequirement;
import com.gpl.rpg.AndorsTrail.model.actor.Player;
import android.app.Activity;
import android.content.Intent;
import android.content.res.Resources;
@@ -10,14 +19,6 @@ import android.view.ViewGroup;
import android.view.ViewGroup.LayoutParams;
import android.widget.Button;
import android.widget.TextView;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.controller.SkillController;
import com.gpl.rpg.AndorsTrail.model.ability.SkillCollection;
import com.gpl.rpg.AndorsTrail.model.ability.SkillInfo;
import com.gpl.rpg.AndorsTrail.model.ability.SkillInfo.SkillLevelRequirement;
import com.gpl.rpg.AndorsTrail.model.actor.Player;
public final class SkillInfoActivity extends Activity {

View File

@@ -1,7 +1,13 @@
package com.gpl.rpg.AndorsTrail.activity;
import android.app.Activity;
import android.app.Fragment;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.activity.fragment.StartScreenActivity_MainMenu;
import com.gpl.rpg.AndorsTrail.activity.fragment.StartScreenActivity_MainMenu.OnNewGameRequestedListener;
import com.gpl.rpg.AndorsTrail.activity.fragment.StartScreenActivity_NewGame;
import com.gpl.rpg.AndorsTrail.activity.fragment.StartScreenActivity_NewGame.GameCreationOverListener;
import com.gpl.rpg.AndorsTrail.resource.tiles.TileManager;
import android.content.Intent;
import android.content.res.Resources;
import android.os.Bundle;
@@ -10,14 +16,6 @@ import android.view.KeyEvent;
import android.view.View;
import android.widget.TextView;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.activity.fragment.StartScreenActivity_MainMenu;
import com.gpl.rpg.AndorsTrail.activity.fragment.StartScreenActivity_NewGame;
import com.gpl.rpg.AndorsTrail.activity.fragment.StartScreenActivity_MainMenu.OnNewGameRequestedListener;
import com.gpl.rpg.AndorsTrail.activity.fragment.StartScreenActivity_NewGame.GameCreationOverListener;
import com.gpl.rpg.AndorsTrail.resource.tiles.TileManager;
public final class StartScreenActivity extends FragmentActivity implements OnNewGameRequestedListener, GameCreationOverListener {

View File

@@ -1,23 +1,5 @@
package com.gpl.rpg.AndorsTrail.activity.fragment;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.*;
import android.view.ContextMenu.ContextMenuInfo;
import android.view.View.OnClickListener;
import android.widget.AdapterView;
import android.widget.AdapterView.AdapterContextMenuInfo;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.Spinner;
import android.widget.TextView;
import android.widget.Toast;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.Dialogs;
import com.gpl.rpg.AndorsTrail.R;
@@ -30,9 +12,29 @@ import com.gpl.rpg.AndorsTrail.model.item.Inventory;
import com.gpl.rpg.AndorsTrail.model.item.ItemContainer;
import com.gpl.rpg.AndorsTrail.model.item.ItemType;
import com.gpl.rpg.AndorsTrail.resource.tiles.TileCollection;
import com.gpl.rpg.AndorsTrail.resource.tiles.TileManager;
import com.gpl.rpg.AndorsTrail.view.ItemContainerAdapter;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.ContextMenu;
import android.view.ContextMenu.ContextMenuInfo;
import android.view.LayoutInflater;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.AdapterView.AdapterContextMenuInfo;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ArrayAdapter;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.Spinner;
import android.widget.TextView;
public final class HeroinfoActivity_Inventory extends Fragment {
private static final int INTENTREQUEST_ITEMINFO = 3;

View File

@@ -1,5 +1,17 @@
package com.gpl.rpg.AndorsTrail.activity.fragment;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.model.actor.Player;
import com.gpl.rpg.AndorsTrail.model.quest.Quest;
import com.gpl.rpg.AndorsTrail.model.quest.QuestLogEntry;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
@@ -7,19 +19,12 @@ import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.*;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemSelectedListener;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.model.actor.Player;
import com.gpl.rpg.AndorsTrail.model.quest.Quest;
import com.gpl.rpg.AndorsTrail.model.quest.QuestLogEntry;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import android.widget.ArrayAdapter;
import android.widget.ExpandableListView;
import android.widget.SimpleExpandableListAdapter;
import android.widget.Spinner;
public final class HeroinfoActivity_Quests extends Fragment {

View File

@@ -1,5 +1,16 @@
package com.gpl.rpg.AndorsTrail.activity.fragment;
import java.util.ArrayList;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.Dialogs;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.context.ControllerContext;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.model.ability.SkillCollection;
import com.gpl.rpg.AndorsTrail.model.actor.Player;
import com.gpl.rpg.AndorsTrail.view.SkillListAdapter;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
@@ -13,16 +24,6 @@ import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.Spinner;
import android.widget.TextView;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.Dialogs;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.context.ControllerContext;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.model.ability.SkillCollection;
import com.gpl.rpg.AndorsTrail.model.actor.Player;
import com.gpl.rpg.AndorsTrail.view.SkillListAdapter;
import java.util.ArrayList;
public final class HeroinfoActivity_Skills extends Fragment {
private static final int INTENTREQUEST_SKILLINFO = 12;

View File

@@ -1,17 +1,6 @@
package com.gpl.rpg.AndorsTrail.activity.fragment;
import android.content.Intent;
import android.content.res.Resources;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.TableLayout;
import android.widget.TableRow;
import android.widget.TextView;
import java.util.ArrayList;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.Dialogs;
@@ -26,7 +15,18 @@ import com.gpl.rpg.AndorsTrail.view.ItemEffectsView;
import com.gpl.rpg.AndorsTrail.view.RangeBar;
import com.gpl.rpg.AndorsTrail.view.TraitsInfoView;
import java.util.ArrayList;
import android.content.Intent;
import android.content.res.Resources;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.TableLayout;
import android.widget.TableRow;
import android.widget.TextView;
public final class HeroinfoActivity_Stats extends Fragment {

View File

@@ -1,5 +1,18 @@
package com.gpl.rpg.AndorsTrail.activity.fragment;
import java.util.HashSet;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.Dialogs;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.model.actor.Monster;
import com.gpl.rpg.AndorsTrail.model.actor.Player;
import com.gpl.rpg.AndorsTrail.model.item.ItemContainer;
import com.gpl.rpg.AndorsTrail.resource.tiles.TileCollection;
import com.gpl.rpg.AndorsTrail.view.ShopItemContainerAdapter;
import com.gpl.rpg.AndorsTrail.view.ShopItemContainerAdapter.OnContainerItemClickedListener;
import android.content.res.Resources;
import android.os.Bundle;
import android.support.v4.app.Fragment;
@@ -12,19 +25,6 @@ import android.widget.ListView;
import android.widget.Spinner;
import android.widget.TextView;
import android.widget.Toast;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.Dialogs;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.model.actor.Monster;
import com.gpl.rpg.AndorsTrail.model.actor.Player;
import com.gpl.rpg.AndorsTrail.model.item.ItemContainer;
import com.gpl.rpg.AndorsTrail.resource.tiles.TileCollection;
import com.gpl.rpg.AndorsTrail.view.ItemContainerAdapter;
import com.gpl.rpg.AndorsTrail.view.ShopItemContainerAdapter;
import com.gpl.rpg.AndorsTrail.view.ShopItemContainerAdapter.OnContainerItemClickedListener;
import java.util.HashSet;
public abstract class ShopActivityFragment extends Fragment implements OnContainerItemClickedListener {

View File

@@ -1,13 +1,14 @@
package com.gpl.rpg.AndorsTrail.activity.fragment;
import android.app.Activity;
import android.content.Intent;
import com.gpl.rpg.AndorsTrail.Dialogs;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.activity.ItemInfoActivity;
import com.gpl.rpg.AndorsTrail.controller.ItemController;
import com.gpl.rpg.AndorsTrail.model.item.ItemType;
import android.app.Activity;
import android.content.Intent;
public final class ShopActivity_Buy extends ShopActivityFragment {
@Override

View File

@@ -1,13 +1,14 @@
package com.gpl.rpg.AndorsTrail.activity.fragment;
import android.app.Activity;
import android.content.Intent;
import com.gpl.rpg.AndorsTrail.Dialogs;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.activity.ItemInfoActivity;
import com.gpl.rpg.AndorsTrail.controller.ItemController;
import com.gpl.rpg.AndorsTrail.model.item.ItemType;
import android.app.Activity;
import android.content.Intent;
public final class ShopActivity_Sell extends ShopActivityFragment {
@Override

View File

@@ -1,30 +1,12 @@
package com.gpl.rpg.AndorsTrail.activity.fragment;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.ContextThemeWrapper;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.AndorsTrailPreferences;
import com.gpl.rpg.AndorsTrail.Dialogs;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.WorldSetup;
import com.gpl.rpg.AndorsTrail.activity.AboutActivity;
import com.gpl.rpg.AndorsTrail.activity.CustomDialog;
import com.gpl.rpg.AndorsTrail.activity.LoadingActivity;
import com.gpl.rpg.AndorsTrail.activity.Preferences;
import com.gpl.rpg.AndorsTrail.controller.Constants;
@@ -32,6 +14,22 @@ import com.gpl.rpg.AndorsTrail.resource.tiles.TileManager;
import com.gpl.rpg.AndorsTrail.savegames.Savegames;
import com.gpl.rpg.AndorsTrail.savegames.Savegames.FileHeader;
import android.app.Activity;
import android.app.Dialog;
import android.content.Intent;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;
public class StartScreenActivity_MainMenu extends Fragment {
private static final int INTENTREQUEST_PREFERENCES = 7;
@@ -189,21 +187,39 @@ public class StartScreenActivity_MainMenu extends Fragment {
}
private void comfirmNewGame() {
new AlertDialog.Builder(new ContextThemeWrapper(getActivity(), R.style.AndorsTrailStyle_Dialog))
.setTitle(R.string.startscreen_newgame)
.setMessage(R.string.startscreen_newgame_confirm)
.setIcon(android.R.drawable.ic_delete)
.setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() {
// new AlertDialog.Builder(new ContextThemeWrapper(getActivity(), R.style.AndorsTrailStyle_Dialog))
// .setTitle(R.string.startscreen_newgame)
// .setMessage(R.string.startscreen_newgame_confirm)
// .setIcon(android.R.drawable.ic_delete)
// .setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() {
// @Override
// public void onClick(DialogInterface dialog, int which) {
// //continueGame(true);
//// hasExistingGame = false;
//// setButtonState(null, null, 0);
// createNewGame();
// }
// })
// .setNegativeButton(android.R.string.cancel, null)
// .create().show();
//
//
final Dialog d = CustomDialog.createDialog(getActivity(),
getString(R.string.startscreen_newgame),
getResources().getDrawable(android.R.drawable.ic_delete),
getResources().getString(R.string.startscreen_newgame_confirm),
null,
true);
CustomDialog.addButton(d, android.R.string.ok, new View.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
//continueGame(true);
// hasExistingGame = false;
// setButtonState(null, null, 0);
public void onClick(View v) {
createNewGame();
}
})
.setNegativeButton(android.R.string.cancel, null)
.create().show();
});
CustomDialog.addDismissButton(d, android.R.string.cancel);
CustomDialog.show(d);
}
private boolean isNewVersion() {

View File

@@ -1,5 +1,11 @@
package com.gpl.rpg.AndorsTrail.activity.fragment;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.WorldSetup;
import com.gpl.rpg.AndorsTrail.activity.LoadingActivity;
import com.gpl.rpg.AndorsTrail.resource.tiles.TileManager;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
@@ -10,17 +16,10 @@ import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.RadioGroup;
import android.widget.ToggleButton;
import android.widget.RadioGroup.OnCheckedChangeListener;
import android.widget.TextView;
import android.widget.Toast;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.WorldSetup;
import com.gpl.rpg.AndorsTrail.activity.LoadingActivity;
import com.gpl.rpg.AndorsTrail.activity.fragment.StartScreenActivity_MainMenu.OnNewGameRequestedListener;
import com.gpl.rpg.AndorsTrail.resource.tiles.TileManager;
import android.widget.ToggleButton;
public class StartScreenActivity_NewGame extends Fragment {

View File

@@ -1,11 +1,23 @@
package com.gpl.rpg.AndorsTrail.context;
import android.content.res.Resources;
import java.lang.ref.WeakReference;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.AndorsTrailPreferences;
import com.gpl.rpg.AndorsTrail.controller.*;
import com.gpl.rpg.AndorsTrail.controller.ActorStatsController;
import com.gpl.rpg.AndorsTrail.controller.CombatController;
import com.gpl.rpg.AndorsTrail.controller.ConversationController;
import com.gpl.rpg.AndorsTrail.controller.GameRoundController;
import com.gpl.rpg.AndorsTrail.controller.InputController;
import com.gpl.rpg.AndorsTrail.controller.ItemController;
import com.gpl.rpg.AndorsTrail.controller.MapController;
import com.gpl.rpg.AndorsTrail.controller.MonsterMovementController;
import com.gpl.rpg.AndorsTrail.controller.MonsterSpawningController;
import com.gpl.rpg.AndorsTrail.controller.MovementController;
import com.gpl.rpg.AndorsTrail.controller.SkillController;
import com.gpl.rpg.AndorsTrail.controller.VisualEffectController;
import java.lang.ref.WeakReference;
import android.content.res.Resources;
public final class ControllerContext {
//Controllers

View File

@@ -2,9 +2,6 @@ package com.gpl.rpg.AndorsTrail.controller;
import java.util.ArrayList;
import android.os.Handler;
import android.os.Message;
import com.gpl.rpg.AndorsTrail.AndorsTrailPreferences;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.context.ControllerContext;
@@ -25,6 +22,9 @@ import com.gpl.rpg.AndorsTrail.model.map.MonsterSpawnArea;
import com.gpl.rpg.AndorsTrail.resource.VisualEffectCollection;
import com.gpl.rpg.AndorsTrail.util.Coord;
import android.os.Handler;
import android.os.Message;
public final class CombatController implements VisualEffectCompletedCallback {
private final ControllerContext controllers;
private final WorldContext world;

View File

@@ -1,11 +1,11 @@
package com.gpl.rpg.AndorsTrail.controller;
import java.util.Random;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.util.ConstRange;
import com.gpl.rpg.AndorsTrail.util.Range;
import java.util.Random;
public final class Constants {
public static final int PERCENT_EXP_LOST_WHEN_DIED = 30;
public static final int LEVELUP_EFFECT_HEALTH = 5;

View File

@@ -2,8 +2,6 @@ package com.gpl.rpg.AndorsTrail.controller;
import java.util.ArrayList;
import android.content.res.Resources;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.context.ControllerContext;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
@@ -31,6 +29,8 @@ import com.gpl.rpg.AndorsTrail.model.script.ScriptEffect;
import com.gpl.rpg.AndorsTrail.util.ConstRange;
import com.gpl.rpg.AndorsTrail.util.L;
import android.content.res.Resources;
public final class ConversationController {
private final ControllerContext controllers;

View File

@@ -1,12 +1,13 @@
package com.gpl.rpg.AndorsTrail.controller;
import com.gpl.rpg.AndorsTrail.context.ControllerContext;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.util.Coord;
import android.view.KeyEvent;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.View.OnLongClickListener;
import com.gpl.rpg.AndorsTrail.context.ControllerContext;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.util.Coord;
public final class InputController implements OnClickListener, OnLongClickListener{
private final ControllerContext controllers;

View File

@@ -1,5 +1,8 @@
package com.gpl.rpg.AndorsTrail.controller;
import java.util.ArrayList;
import java.util.Collection;
import com.gpl.rpg.AndorsTrail.AndorsTrailPreferences;
import com.gpl.rpg.AndorsTrail.context.ControllerContext;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
@@ -8,11 +11,13 @@ import com.gpl.rpg.AndorsTrail.model.ModelContainer;
import com.gpl.rpg.AndorsTrail.model.ability.SkillCollection;
import com.gpl.rpg.AndorsTrail.model.ability.traits.AbilityModifierTraits;
import com.gpl.rpg.AndorsTrail.model.actor.Player;
import com.gpl.rpg.AndorsTrail.model.item.*;
import com.gpl.rpg.AndorsTrail.model.item.Inventory;
import com.gpl.rpg.AndorsTrail.model.item.ItemContainer;
import com.gpl.rpg.AndorsTrail.model.item.ItemContainer.ItemEntry;
import java.util.ArrayList;
import java.util.Collection;
import com.gpl.rpg.AndorsTrail.model.item.ItemTraits_OnHitReceived;
import com.gpl.rpg.AndorsTrail.model.item.ItemTraits_OnUse;
import com.gpl.rpg.AndorsTrail.model.item.ItemType;
import com.gpl.rpg.AndorsTrail.model.item.Loot;
public final class ItemController {

View File

@@ -1,6 +1,7 @@
package com.gpl.rpg.AndorsTrail.controller;
import android.content.res.Resources;
import java.util.List;
import com.gpl.rpg.AndorsTrail.context.ControllerContext;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.controller.listeners.MapLayoutListeners;
@@ -16,7 +17,7 @@ import com.gpl.rpg.AndorsTrail.model.map.PredefinedMap;
import com.gpl.rpg.AndorsTrail.model.map.ReplaceableMapSection;
import com.gpl.rpg.AndorsTrail.util.Coord;
import java.util.List;
import android.content.res.Resources;
public final class MapController {

View File

@@ -1,7 +1,5 @@
package com.gpl.rpg.AndorsTrail.controller;
import android.content.res.Resources;
import android.os.AsyncTask;
import com.gpl.rpg.AndorsTrail.AndorsTrailPreferences;
import com.gpl.rpg.AndorsTrail.context.ControllerContext;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
@@ -10,12 +8,19 @@ import com.gpl.rpg.AndorsTrail.model.ModelContainer;
import com.gpl.rpg.AndorsTrail.model.actor.Monster;
import com.gpl.rpg.AndorsTrail.model.actor.Player;
import com.gpl.rpg.AndorsTrail.model.item.Loot;
import com.gpl.rpg.AndorsTrail.model.map.*;
import com.gpl.rpg.AndorsTrail.model.map.LayeredTileMap;
import com.gpl.rpg.AndorsTrail.model.map.MapObject;
import com.gpl.rpg.AndorsTrail.model.map.MonsterSpawnArea;
import com.gpl.rpg.AndorsTrail.model.map.PredefinedMap;
import com.gpl.rpg.AndorsTrail.model.map.TMXMapTranslator;
import com.gpl.rpg.AndorsTrail.resource.tiles.TileCollection;
import com.gpl.rpg.AndorsTrail.util.Coord;
import com.gpl.rpg.AndorsTrail.util.L;
import com.gpl.rpg.AndorsTrail.util.TimedMessageTask;
import android.content.res.Resources;
import android.os.AsyncTask;
public final class MovementController implements TimedMessageTask.Callback {
private final ControllerContext controllers;
private final WorldContext world;

View File

@@ -1,10 +1,10 @@
package com.gpl.rpg.AndorsTrail.controller;
import java.util.Arrays;
import com.gpl.rpg.AndorsTrail.util.Coord;
import com.gpl.rpg.AndorsTrail.util.CoordRect;
import java.util.Arrays;
public class PathFinder {
private final int maxWidth;
private final int maxHeight;

View File

@@ -1,11 +1,5 @@
package com.gpl.rpg.AndorsTrail.controller;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Paint.Align;
import android.graphics.Rect;
import android.os.Handler;
import com.gpl.rpg.AndorsTrail.AndorsTrailPreferences;
import com.gpl.rpg.AndorsTrail.context.ControllerContext;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
@@ -21,6 +15,12 @@ import com.gpl.rpg.AndorsTrail.util.Coord;
import com.gpl.rpg.AndorsTrail.util.CoordRect;
import com.gpl.rpg.AndorsTrail.util.Size;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Paint.Align;
import android.graphics.Rect;
import android.os.Handler;
public final class VisualEffectController {
private int effectCount = 0;

View File

@@ -1,15 +1,13 @@
package com.gpl.rpg.AndorsTrail.controller;
import android.content.Context;
import android.content.Intent;
import android.content.res.Resources;
import android.graphics.Bitmap;
import android.graphics.Bitmap.Config;
import android.graphics.Canvas;
import android.graphics.Paint;
import android.os.AsyncTask;
import android.os.Environment;
import android.widget.Toast;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.activity.DisplayWorldMapActivity;
@@ -26,13 +24,16 @@ import com.gpl.rpg.AndorsTrail.util.CoordRect;
import com.gpl.rpg.AndorsTrail.util.L;
import com.gpl.rpg.AndorsTrail.util.Size;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
import android.content.Context;
import android.content.Intent;
import android.content.res.Resources;
import android.graphics.Bitmap;
import android.graphics.Bitmap.Config;
import android.graphics.Canvas;
import android.graphics.Paint;
import android.os.AsyncTask;
import android.os.Environment;
import android.widget.Toast;
public final class WorldMapController {

View File

@@ -1,11 +1,11 @@
package com.gpl.rpg.AndorsTrail.controller.listeners;
import java.util.Collection;
import com.gpl.rpg.AndorsTrail.model.actor.Monster;
import com.gpl.rpg.AndorsTrail.model.item.Loot;
import com.gpl.rpg.AndorsTrail.model.map.MapObject;
import java.util.Collection;
public interface WorldEventListener {
void onPlayerStartedConversation(Monster m, String phraseID);
void onScriptAreaStartedConversation(String phraseID);

View File

@@ -1,12 +1,12 @@
package com.gpl.rpg.AndorsTrail.controller.listeners;
import java.util.Collection;
import com.gpl.rpg.AndorsTrail.model.actor.Monster;
import com.gpl.rpg.AndorsTrail.model.item.Loot;
import com.gpl.rpg.AndorsTrail.model.map.MapObject;
import com.gpl.rpg.AndorsTrail.util.ListOfListeners;
import java.util.Collection;
public final class WorldEventListeners extends ListOfListeners<WorldEventListener> implements WorldEventListener {
private final Function2<WorldEventListener, Monster, String> onPlayerStartedConversation = new Function2<WorldEventListener, Monster, String>() {

View File

@@ -1,6 +1,16 @@
package com.gpl.rpg.AndorsTrail.model;
import android.content.res.Resources;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.List;
import java.util.Map.Entry;
import java.util.Set;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.model.actor.MonsterType;
@@ -8,11 +18,7 @@ import com.gpl.rpg.AndorsTrail.model.item.ItemType;
import com.gpl.rpg.AndorsTrail.model.map.PredefinedMap;
import com.gpl.rpg.AndorsTrail.model.quest.Quest;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.util.*;
import java.util.Map.Entry;
import android.content.res.Resources;
public final class GameStatistics {
private int deaths = 0;

View File

@@ -1,13 +1,12 @@
package com.gpl.rpg.AndorsTrail.model;
import com.gpl.rpg.AndorsTrail.model.actor.Monster;
import com.gpl.rpg.AndorsTrail.model.item.Inventory;
import com.gpl.rpg.AndorsTrail.util.Coord;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import com.gpl.rpg.AndorsTrail.model.actor.Monster;
import com.gpl.rpg.AndorsTrail.util.Coord;
public final class InterfaceData {
public boolean isMainActivityVisible = false;
public boolean isInCombat = false;

View File

@@ -1,15 +1,15 @@
package com.gpl.rpg.AndorsTrail.model;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import com.gpl.rpg.AndorsTrail.context.ControllerContext;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.model.actor.Player;
import com.gpl.rpg.AndorsTrail.model.map.LayeredTileMap;
import com.gpl.rpg.AndorsTrail.model.map.PredefinedMap;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
public final class ModelContainer {
public final Player player;

View File

@@ -1,11 +1,11 @@
package com.gpl.rpg.AndorsTrail.model.ability;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
public final class ActorCondition {
public static final int MAGNITUDE_REMOVE_ALL = -99;
public static final int DURATION_FOREVER = 999;

View File

@@ -1,11 +1,11 @@
package com.gpl.rpg.AndorsTrail.model.ability;
import java.util.HashMap;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.resource.parsers.ActorConditionsTypeParser;
import com.gpl.rpg.AndorsTrail.util.L;
import java.util.HashMap;
public final class ActorConditionTypeCollection {
private final HashMap<String, ActorConditionType> conditionTypes = new HashMap<String, ActorConditionType>();

View File

@@ -1,12 +1,13 @@
package com.gpl.rpg.AndorsTrail.model.ability;
import android.util.SparseArray;
import java.util.ArrayList;
import java.util.Collection;
import com.gpl.rpg.AndorsTrail.controller.Constants;
import com.gpl.rpg.AndorsTrail.model.ability.SkillInfo.SkillLevelRequirement;
import com.gpl.rpg.AndorsTrail.model.actor.Player;
import java.util.ArrayList;
import java.util.Collection;
import android.util.SparseArray;
public final class SkillCollection {
public static enum SkillID {

View File

@@ -1,5 +1,9 @@
package com.gpl.rpg.AndorsTrail.model.actor;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.model.ability.ActorCondition;
import com.gpl.rpg.AndorsTrail.model.ability.SkillCollection;
@@ -11,10 +15,6 @@ import com.gpl.rpg.AndorsTrail.util.Coord;
import com.gpl.rpg.AndorsTrail.util.CoordRect;
import com.gpl.rpg.AndorsTrail.util.Range;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
public final class Monster extends Actor {
public Coord movementDestination = null;

View File

@@ -1,12 +1,12 @@
package com.gpl.rpg.AndorsTrail.model.actor;
import java.util.ArrayList;
import java.util.HashMap;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.resource.parsers.MonsterTypeParser;
import com.gpl.rpg.AndorsTrail.util.L;
import java.util.ArrayList;
import java.util.HashMap;
public final class MonsterTypeCollection {
private final HashMap<String, MonsterType> monsterTypesById = new HashMap<String, MonsterType>();

View File

@@ -7,8 +7,6 @@ import java.util.HashMap;
import java.util.HashSet;
import java.util.Map.Entry;
import android.util.SparseIntArray;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.context.ControllerContext;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
@@ -19,12 +17,13 @@ import com.gpl.rpg.AndorsTrail.model.item.DropListCollection;
import com.gpl.rpg.AndorsTrail.model.item.Inventory;
import com.gpl.rpg.AndorsTrail.model.item.Loot;
import com.gpl.rpg.AndorsTrail.model.quest.QuestProgress;
import com.gpl.rpg.AndorsTrail.resource.tiles.TileManager;
import com.gpl.rpg.AndorsTrail.savegames.LegacySavegameFormatReaderForPlayer;
import com.gpl.rpg.AndorsTrail.util.Coord;
import com.gpl.rpg.AndorsTrail.util.Range;
import com.gpl.rpg.AndorsTrail.util.Size;
import android.util.SparseIntArray;
public final class Player extends Actor {
public static final int DEFAULT_PLAYER_ATTACKCOST = 4;

View File

@@ -1,12 +1,12 @@
package com.gpl.rpg.AndorsTrail.model.conversation;
import java.util.Collection;
import java.util.HashMap;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.resource.parsers.ConversationListParser;
import com.gpl.rpg.AndorsTrail.util.L;
import java.util.Collection;
import java.util.HashMap;
public final class ConversationCollection {
public static final String PHRASE_CLOSE = "X";
public static final String PHRASE_SHOP = "S";

View File

@@ -1,11 +1,11 @@
package com.gpl.rpg.AndorsTrail.model.item;
import java.util.HashMap;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.resource.parsers.DropListParser;
import com.gpl.rpg.AndorsTrail.util.L;
import java.util.HashMap;
public final class DropListCollection {
public static final String DROPLIST_STARTITEMS = "startitems";

View File

@@ -1,18 +1,11 @@
package com.gpl.rpg.AndorsTrail.model.item;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.model.actor.Player;
import com.gpl.rpg.AndorsTrail.savegames.LegacySavegameFormatReaderForItemContainer;
import com.gpl.rpg.AndorsTrail.savegames.Savegames;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.Map;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.savegames.LegacySavegameFormatReaderForItemContainer;
public final class Inventory extends ItemContainer {

View File

@@ -1,11 +1,11 @@
package com.gpl.rpg.AndorsTrail.model.item;
import java.util.HashMap;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.resource.parsers.ItemCategoryParser;
import com.gpl.rpg.AndorsTrail.util.L;
import java.util.HashMap;
public final class ItemCategoryCollection {
private final HashMap<String, ItemCategory> itemCategories = new HashMap<String, ItemCategory>();

View File

@@ -1,8 +1,5 @@
package com.gpl.rpg.AndorsTrail.model.item;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.model.actor.Player;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
@@ -10,6 +7,9 @@ import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.model.actor.Player;
public class ItemContainer {
public final ArrayList<ItemEntry> items = new ArrayList<ItemEntry>();

View File

@@ -1,11 +1,11 @@
package com.gpl.rpg.AndorsTrail.model.item;
import java.util.HashMap;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.resource.parsers.ItemTypeParser;
import com.gpl.rpg.AndorsTrail.util.L;
import java.util.HashMap;
public final class ItemTypeCollection {
private static final String ITEMTYPE_GOLD = "gold";

View File

@@ -1,13 +1,13 @@
package com.gpl.rpg.AndorsTrail.model.item;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.savegames.LegacySavegameFormatReaderForItemContainer;
import com.gpl.rpg.AndorsTrail.util.Coord;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.savegames.LegacySavegameFormatReaderForItemContainer;
import com.gpl.rpg.AndorsTrail.util.Coord;
public final class Loot {
public int exp = 0;
public int gold = 0;

View File

@@ -1,13 +1,14 @@
package com.gpl.rpg.AndorsTrail.model.map;
import android.graphics.ColorFilter;
import android.graphics.ColorMatrixColorFilter;
import android.graphics.Paint;
import java.util.Collection;
import com.gpl.rpg.AndorsTrail.util.Coord;
import com.gpl.rpg.AndorsTrail.util.CoordRect;
import com.gpl.rpg.AndorsTrail.util.Size;
import java.util.Collection;
import android.graphics.ColorFilter;
import android.graphics.ColorMatrixColorFilter;
import android.graphics.Paint;
public final class LayeredTileMap {
private static final ColorFilter colorFilterBlack20 = createGrayScaleColorFilter(0.8f);

View File

@@ -1,11 +1,5 @@
package com.gpl.rpg.AndorsTrail.model.map;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.context.ControllerContext;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.savegames.LegacySavegameFormatReaderForMap;
import com.gpl.rpg.AndorsTrail.util.L;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
@@ -14,6 +8,12 @@ import java.util.Collection;
import java.util.HashMap;
import java.util.List;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.context.ControllerContext;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.savegames.LegacySavegameFormatReaderForMap;
import com.gpl.rpg.AndorsTrail.util.L;
public final class MapCollection {
private final HashMap<String, PredefinedMap> predefinedMaps = new HashMap<String, PredefinedMap>();
public final HashMap<String, WorldMapSegment> worldMapSegments = new HashMap<String, WorldMapSegment>();

View File

@@ -1,5 +1,10 @@
package com.gpl.rpg.AndorsTrail.model.map;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.util.ArrayList;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.controller.Constants;
import com.gpl.rpg.AndorsTrail.model.actor.Monster;
@@ -8,11 +13,6 @@ import com.gpl.rpg.AndorsTrail.util.Coord;
import com.gpl.rpg.AndorsTrail.util.CoordRect;
import com.gpl.rpg.AndorsTrail.util.Range;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.util.ArrayList;
public final class MonsterSpawnArea {
public final CoordRect area;
public final Range quantity;

View File

@@ -1,6 +1,11 @@
package com.gpl.rpg.AndorsTrail.model.map;
import android.app.ActivityManager.RecentTaskInfo;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.context.ControllerContext;
@@ -16,13 +21,6 @@ import com.gpl.rpg.AndorsTrail.util.CoordRect;
import com.gpl.rpg.AndorsTrail.util.L;
import com.gpl.rpg.AndorsTrail.util.Size;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
public final class PredefinedMap {
private static final long VISIT_RESET = 0;

View File

@@ -1,13 +1,5 @@
package com.gpl.rpg.AndorsTrail.model.map;
import android.content.res.Resources;
import android.content.res.XmlResourceParser;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.util.Base64;
import com.gpl.rpg.AndorsTrail.util.L;
import com.gpl.rpg.AndorsTrail.util.XmlResourceParserUtils;
import org.xmlpull.v1.XmlPullParserException;
import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.security.MessageDigest;
@@ -16,6 +8,16 @@ import java.util.ArrayList;
import java.util.zip.GZIPInputStream;
import java.util.zip.InflaterInputStream;
import org.xmlpull.v1.XmlPullParserException;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.util.Base64;
import com.gpl.rpg.AndorsTrail.util.L;
import com.gpl.rpg.AndorsTrail.util.XmlResourceParserUtils;
import android.content.res.Resources;
import android.content.res.XmlResourceParser;
public final class TMXMapFileParser {
private static final int TILESIZE = 32;

View File

@@ -1,21 +1,38 @@
package com.gpl.rpg.AndorsTrail.model.map;
import android.content.res.Resources;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.HashMap;
import java.util.HashSet;
import java.util.LinkedList;
import java.util.List;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.model.actor.MonsterType;
import com.gpl.rpg.AndorsTrail.model.actor.MonsterTypeCollection;
import com.gpl.rpg.AndorsTrail.model.item.DropList;
import com.gpl.rpg.AndorsTrail.model.item.DropListCollection;
import com.gpl.rpg.AndorsTrail.model.map.TMXMapFileParser.*;
import com.gpl.rpg.AndorsTrail.model.map.TMXMapFileParser.TMXLayer;
import com.gpl.rpg.AndorsTrail.model.map.TMXMapFileParser.TMXLayerMap;
import com.gpl.rpg.AndorsTrail.model.map.TMXMapFileParser.TMXMap;
import com.gpl.rpg.AndorsTrail.model.map.TMXMapFileParser.TMXObject;
import com.gpl.rpg.AndorsTrail.model.map.TMXMapFileParser.TMXObjectGroup;
import com.gpl.rpg.AndorsTrail.model.map.TMXMapFileParser.TMXObjectMap;
import com.gpl.rpg.AndorsTrail.model.map.TMXMapFileParser.TMXProperty;
import com.gpl.rpg.AndorsTrail.model.map.TMXMapFileParser.TMXTileSet;
import com.gpl.rpg.AndorsTrail.model.quest.QuestProgress;
import com.gpl.rpg.AndorsTrail.model.script.Requirement;
import com.gpl.rpg.AndorsTrail.resource.tiles.TileCache;
import com.gpl.rpg.AndorsTrail.util.*;
import com.gpl.rpg.AndorsTrail.util.Coord;
import com.gpl.rpg.AndorsTrail.util.CoordRect;
import com.gpl.rpg.AndorsTrail.util.L;
import com.gpl.rpg.AndorsTrail.util.Range;
import com.gpl.rpg.AndorsTrail.util.Size;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.util.*;
import android.content.res.Resources;
public final class TMXMapTranslator {
private final ArrayList<TMXObjectMap> maps = new ArrayList<TMXObjectMap>();

View File

@@ -1,10 +1,10 @@
package com.gpl.rpg.AndorsTrail.model.map;
import com.gpl.rpg.AndorsTrail.util.Coord;
import java.util.HashMap;
import java.util.HashSet;
import com.gpl.rpg.AndorsTrail.util.Coord;
public final class WorldMapSegment {
public final String name;
public final HashMap<String, WorldMapSegmentMap> maps = new HashMap<String, WorldMapSegmentMap>();

View File

@@ -1,14 +1,14 @@
package com.gpl.rpg.AndorsTrail.model.quest;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.resource.parsers.QuestParser;
import com.gpl.rpg.AndorsTrail.util.L;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.resource.parsers.QuestParser;
import com.gpl.rpg.AndorsTrail.util.L;
public final class QuestCollection {
private final HashMap<String, Quest> quests = new HashMap<String, Quest>();

View File

@@ -1,12 +1,13 @@
package com.gpl.rpg.AndorsTrail.resource;
import android.content.res.Resources;
import java.util.Collection;
import java.util.HashMap;
import com.gpl.rpg.AndorsTrail.model.conversation.ConversationCollection;
import com.gpl.rpg.AndorsTrail.model.conversation.Phrase;
import com.gpl.rpg.AndorsTrail.resource.parsers.ConversationListParser;
import java.util.Collection;
import java.util.HashMap;
import android.content.res.Resources;
public final class ConversationLoader {
private final HashMap<String, Integer> resourceIDsPerPhraseID = new HashMap<String, Integer>();

View File

@@ -1,115 +1,116 @@
package com.gpl.rpg.AndorsTrail.resource;
import android.util.SparseArray;
import android.util.SparseIntArray;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.resource.tiles.ResourceFileTileset;
import com.gpl.rpg.AndorsTrail.resource.tiles.TileCache;
import com.gpl.rpg.AndorsTrail.util.L;
import com.gpl.rpg.AndorsTrail.util.Size;
import java.util.HashMap;
import java.util.Map;
public final class DynamicTileLoader {
private final TileCache tileCache;
private final SparseArray<ResourceFileTilesetLoadList> preparedTilesetsByResourceId = new SparseArray<ResourceFileTilesetLoadList>();
private final HashMap<String, ResourceFileTilesetLoadList> preparedTilesetsByResourceName = new HashMap<String, ResourceFileTilesetLoadList>();
private int currentTileStoreIndex;
private static final class ResourceFileTilesetLoadList {
public final ResourceFileTileset tileset;
public final SparseIntArray tileIDsToLoadPerLocalID = new SparseIntArray();
public ResourceFileTilesetLoadList(ResourceFileTileset tileset) {
this.tileset = tileset;
}
}
public DynamicTileLoader(TileCache tileCache) {
this.tileCache = tileCache;
initialize();
}
private void initialize() {
preparedTilesetsByResourceId.clear();
preparedTilesetsByResourceName.clear();
currentTileStoreIndex = tileCache.getMaxTileID();
}
public void prepareTileset(int resourceId, String tilesetName, Size gridDimensions, Size spriteDimensionsInTiles, int tileSize) {
ResourceFileTileset b = new ResourceFileTileset(resourceId, tilesetName, gridDimensions, spriteDimensionsInTiles, tileSize);
ResourceFileTilesetLoadList loadList = new ResourceFileTilesetLoadList(b);
preparedTilesetsByResourceId.put(resourceId, loadList);
preparedTilesetsByResourceName.put(tilesetName, loadList);
}
private ResourceFileTilesetLoadList getTilesetBitmap(int tilesetImageResourceID) {
if (AndorsTrailApplication.DEVELOPMENT_VALIDATEDATA) {
if (preparedTilesetsByResourceId.get(tilesetImageResourceID) == null) {
L.log("WARNING: Cannot load tileset " + tilesetImageResourceID);
return null;
}
}
return preparedTilesetsByResourceId.get(tilesetImageResourceID);
}
private ResourceFileTilesetLoadList getTilesetBitmap(String tilesetName) {
if (AndorsTrailApplication.DEVELOPMENT_VALIDATEDATA) {
if (!preparedTilesetsByResourceName.containsKey(tilesetName)) {
L.log("WARNING: Cannot load tileset " + tilesetName);
return null;
}
}
return preparedTilesetsByResourceName.get(tilesetName);
}
public int prepareTileID(int tilesetImageResourceID, int localID) {
ResourceFileTilesetLoadList b = getTilesetBitmap(tilesetImageResourceID);
return prepareTileID(b, localID);
}
public int prepareTileID(String tilesetName, int localID) {
ResourceFileTilesetLoadList b = getTilesetBitmap(tilesetName);
return prepareTileID(b, localID);
}
public Size getTilesetSize(String tilesetName) {
ResourceFileTilesetLoadList b = getTilesetBitmap(tilesetName);
return b.tileset.destinationTileSize;
}
public Size getTilesetTileSize(String tilesetName) {
ResourceFileTilesetLoadList b = getTilesetBitmap(tilesetName);
return b.tileset.spriteDimensionsInTiles;
}
private int prepareTileID(ResourceFileTilesetLoadList tileset, int localID) {
int tileID = tileset.tileIDsToLoadPerLocalID.get(localID);
if (tileID == 0) {
++currentTileStoreIndex;
tileID = currentTileStoreIndex;
tileset.tileIDsToLoadPerLocalID.put(localID, tileID);
}
return tileID;
}
public void prepareAllMapTiles() {
for (Map.Entry<String, ResourceFileTilesetLoadList> tileset : preparedTilesetsByResourceName.entrySet()) {
if (!tileset.getKey().startsWith("map_")) continue;
ResourceFileTilesetLoadList b = tileset.getValue();
int numTiles = b.tileset.numTiles.width * b.tileset.numTiles.height;
for(int i = 0; i < numTiles; ++i) {
prepareTileID(b, i);
}
}
}
public void flush() {
tileCache.allocateMaxTileID(currentTileStoreIndex);
for (int i = 0; i < preparedTilesetsByResourceId.size(); ++i) {
ResourceFileTilesetLoadList e = preparedTilesetsByResourceId.valueAt(i);
ResourceFileTileset tileset = e.tileset;
SparseIntArray tileIDsToLoad = e.tileIDsToLoadPerLocalID;
for (int j = 0; j < tileIDsToLoad.size(); ++j) {
tileCache.setTile(tileIDsToLoad.valueAt(j), tileset, tileIDsToLoad.keyAt(j));
}
}
}
}
package com.gpl.rpg.AndorsTrail.resource;
import java.util.HashMap;
import java.util.Map;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.resource.tiles.ResourceFileTileset;
import com.gpl.rpg.AndorsTrail.resource.tiles.TileCache;
import com.gpl.rpg.AndorsTrail.util.L;
import com.gpl.rpg.AndorsTrail.util.Size;
import android.util.SparseArray;
import android.util.SparseIntArray;
public final class DynamicTileLoader {
private final TileCache tileCache;
private final SparseArray<ResourceFileTilesetLoadList> preparedTilesetsByResourceId = new SparseArray<ResourceFileTilesetLoadList>();
private final HashMap<String, ResourceFileTilesetLoadList> preparedTilesetsByResourceName = new HashMap<String, ResourceFileTilesetLoadList>();
private int currentTileStoreIndex;
private static final class ResourceFileTilesetLoadList {
public final ResourceFileTileset tileset;
public final SparseIntArray tileIDsToLoadPerLocalID = new SparseIntArray();
public ResourceFileTilesetLoadList(ResourceFileTileset tileset) {
this.tileset = tileset;
}
}
public DynamicTileLoader(TileCache tileCache) {
this.tileCache = tileCache;
initialize();
}
private void initialize() {
preparedTilesetsByResourceId.clear();
preparedTilesetsByResourceName.clear();
currentTileStoreIndex = tileCache.getMaxTileID();
}
public void prepareTileset(int resourceId, String tilesetName, Size gridDimensions, Size spriteDimensionsInTiles, int tileSize) {
ResourceFileTileset b = new ResourceFileTileset(resourceId, tilesetName, gridDimensions, spriteDimensionsInTiles, tileSize);
ResourceFileTilesetLoadList loadList = new ResourceFileTilesetLoadList(b);
preparedTilesetsByResourceId.put(resourceId, loadList);
preparedTilesetsByResourceName.put(tilesetName, loadList);
}
private ResourceFileTilesetLoadList getTilesetBitmap(int tilesetImageResourceID) {
if (AndorsTrailApplication.DEVELOPMENT_VALIDATEDATA) {
if (preparedTilesetsByResourceId.get(tilesetImageResourceID) == null) {
L.log("WARNING: Cannot load tileset " + tilesetImageResourceID);
return null;
}
}
return preparedTilesetsByResourceId.get(tilesetImageResourceID);
}
private ResourceFileTilesetLoadList getTilesetBitmap(String tilesetName) {
if (AndorsTrailApplication.DEVELOPMENT_VALIDATEDATA) {
if (!preparedTilesetsByResourceName.containsKey(tilesetName)) {
L.log("WARNING: Cannot load tileset " + tilesetName);
return null;
}
}
return preparedTilesetsByResourceName.get(tilesetName);
}
public int prepareTileID(int tilesetImageResourceID, int localID) {
ResourceFileTilesetLoadList b = getTilesetBitmap(tilesetImageResourceID);
return prepareTileID(b, localID);
}
public int prepareTileID(String tilesetName, int localID) {
ResourceFileTilesetLoadList b = getTilesetBitmap(tilesetName);
return prepareTileID(b, localID);
}
public Size getTilesetSize(String tilesetName) {
ResourceFileTilesetLoadList b = getTilesetBitmap(tilesetName);
return b.tileset.destinationTileSize;
}
public Size getTilesetTileSize(String tilesetName) {
ResourceFileTilesetLoadList b = getTilesetBitmap(tilesetName);
return b.tileset.spriteDimensionsInTiles;
}
private int prepareTileID(ResourceFileTilesetLoadList tileset, int localID) {
int tileID = tileset.tileIDsToLoadPerLocalID.get(localID);
if (tileID == 0) {
++currentTileStoreIndex;
tileID = currentTileStoreIndex;
tileset.tileIDsToLoadPerLocalID.put(localID, tileID);
}
return tileID;
}
public void prepareAllMapTiles() {
for (Map.Entry<String, ResourceFileTilesetLoadList> tileset : preparedTilesetsByResourceName.entrySet()) {
if (!tileset.getKey().startsWith("map_")) continue;
ResourceFileTilesetLoadList b = tileset.getValue();
int numTiles = b.tileset.numTiles.width * b.tileset.numTiles.height;
for(int i = 0; i < numTiles; ++i) {
prepareTileID(b, i);
}
}
}
public void flush() {
tileCache.allocateMaxTileID(currentTileStoreIndex);
for (int i = 0; i < preparedTilesetsByResourceId.size(); ++i) {
ResourceFileTilesetLoadList e = preparedTilesetsByResourceId.valueAt(i);
ResourceFileTileset tileset = e.tileset;
SparseIntArray tileIDsToLoad = e.tileIDsToLoadPerLocalID;
for (int j = 0; j < tileIDsToLoad.size(); ++j) {
tileCache.setTile(tileIDsToLoad.valueAt(j), tileset, tileIDsToLoad.keyAt(j));
}
}
}
}

View File

@@ -1,22 +1,30 @@
package com.gpl.rpg.AndorsTrail.resource;
import android.content.res.Resources;
import android.content.res.TypedArray;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.model.conversation.ConversationCollection;
import com.gpl.rpg.AndorsTrail.model.map.TMXMapTranslator;
import com.gpl.rpg.AndorsTrail.resource.parsers.*;
import com.gpl.rpg.AndorsTrail.util.L;
import com.gpl.rpg.AndorsTrail.util.Size;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.Collection;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.model.conversation.ConversationCollection;
import com.gpl.rpg.AndorsTrail.model.map.TMXMapTranslator;
import com.gpl.rpg.AndorsTrail.resource.parsers.ActorConditionsTypeParser;
import com.gpl.rpg.AndorsTrail.resource.parsers.ConversationListParser;
import com.gpl.rpg.AndorsTrail.resource.parsers.DropListParser;
import com.gpl.rpg.AndorsTrail.resource.parsers.ItemCategoryParser;
import com.gpl.rpg.AndorsTrail.resource.parsers.ItemTypeParser;
import com.gpl.rpg.AndorsTrail.resource.parsers.MonsterTypeParser;
import com.gpl.rpg.AndorsTrail.resource.parsers.QuestParser;
import com.gpl.rpg.AndorsTrail.resource.parsers.WorldMapParser;
import com.gpl.rpg.AndorsTrail.util.L;
import com.gpl.rpg.AndorsTrail.util.Size;
import android.content.res.Resources;
import android.content.res.TypedArray;
public final class ResourceLoader {
private static final int itemCategoriesResourceId = AndorsTrailApplication.DEVELOPMENT_DEBUGRESOURCES ? R.array.loadresource_itemcategories_debug : R.array.loadresource_itemcategories;

View File

@@ -1,15 +1,16 @@
package com.gpl.rpg.AndorsTrail.resource;
import android.content.res.AssetManager;
import android.content.res.Resources;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.util.L;
import java.io.BufferedInputStream;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.util.L;
import android.content.res.AssetManager;
import android.content.res.Resources;
public final class TranslationLoader {
private final BinaryMoFileParser parser;

View File

@@ -1,9 +1,10 @@
package com.gpl.rpg.AndorsTrail.resource;
import android.graphics.Color;
import com.gpl.rpg.AndorsTrail.R;
import com.gpl.rpg.AndorsTrail.util.ConstRange;
import android.graphics.Color;
public final class VisualEffectCollection {
public static enum VisualEffectID {

Some files were not shown because too many files have changed in this diff Show More