1 class Pettanr.CircleSpeechBalloon
\r
3 class Pettanr.CircleSpeechBalloon.SpeechBalloon extends Backbone.Model
\r
4 # OMG... this model is not petanized item
\r
5 # it means that can't change name
\r
7 "circle_speech_balloons"
\r
10 "CircleSpeechBalloon"
\r
13 @base_name() + '/speech_balloon'
\r
16 @base_name() + '/speech_balloons'
\r
19 @baseName() + '/SpeechBalloon'
\r
22 @baseName() + '/SpeechBalloons'
\r
28 @engine_name() + '/speech_balloons'
\r
30 class Pettanr.CircleSpeechBalloon.Balloon extends Backbone.Model
\r
31 # OMG... this model is not petanized item
\r
32 # it means that can't change name
\r
34 "circle_speech_balloons"
\r
37 "CircleSpeechBalloon"
\r
40 @base_name() + '/balloon'
\r
43 @base_name() + '/balloons'
\r
46 @baseName() + '/Balloon'
\r
49 @baseName() + '/Balloons'
\r
55 @engine_name() + '/balloons'
\r
57 class Pettanr.CircleSpeechBalloon.Speech extends Backbone.Model
\r
58 # OMG... this model is not petanized item
\r
59 # it means that can't change name
\r
61 "circle_speech_balloons"
\r
64 "CircleSpeechBalloon"
\r
67 @base_name() + '/speech'
\r
70 @base_name() + '/speeches'
\r
73 @baseName() + '/Speech'
\r
76 @baseName() + '/Speeches'
\r
82 @engine_name() + '/speeches'
\r
84 class Pettanr.CircleSpeechBalloon.SpeechBalloonModule
\r
85 supply_default: (templates) ->
\r
86 @templates = templates
\r
88 speech_balloon_extend: () ->
\r
89 @new_speech_balloon() if not @sbex
\r
92 speech_balloon_extend_setter: (params) ->
\r
94 @sbex = new Pettanr.CircleSpeechBalloon.SpeechBalloon(params)
\r
95 # no supply default params
\r
97 new_speech_balloon: (params = {}) ->
\r
98 @sbex = new Pettanr.CircleSpeechBalloon.SpeechBalloon(params)
\r
99 @sbex.supply_default()
\r
101 class Pettanr.CircleSpeechBalloon.BalloonModule
\r
102 supply_default: (templates) ->
\r
103 @templates = templates
\r
107 width: @parsed_settings()['speech_balloon']['default_width'],
\r
108 height: @parsed_settings()['speech_balloon']['default_height'],
\r
109 r: @parsed_settings()['speech_balloon']['default_r']
\r
111 @select_system_picture()
\r
113 hoge_templates: () ->
\r
114 if !@templates.speech_balloon_template
\r
115 retriever = new Pettanr.Cache.Retriever(Pettanr.SpeechBalloonTemplate, @get('speech_balloon_template_id'))
\r
116 @listenTo(retriever, 'retrieve', @retrieve_speech_balloon_template)
\r
117 retriever.retrieve()
\r
119 retrieve_speech_balloon_template: (speech_balloon_template) ->
\r
120 @templates.speech_balloon_template = speech_balloon_template
\r
122 balloon_extend: () ->
\r
123 @new_balloon() if not @bex
\r
126 balloon_extend_setter: (params) ->
\r
128 @bex = new Pettanr.CircleSpeechBalloon.Balloon(params)
\r
129 # no supply default params
\r
131 new_balloon: (params = {}) ->
\r
132 @bex = new Pettanr.CircleSpeechBalloon.Balloon(params)
\r
133 @bex.supply_default()
\r
135 parsed_settings: () ->
\r
136 return @parsed if @parsed
\r
137 @parsed = @templates.speech_balloon_template.parsed_settings()
\r
139 select_system_picture: () ->
\r
140 idx = @r_to_index(@round_r(@get('r')))
\r
141 sid = @parsed_settings()[Pettanr.to_s(idx)]['balloon']['system_picture_id']
\r
142 @set({system_picture_id: sid}, {silent: true})
\r
146 @parsed_settings()['speech_balloon']['r_step']
\r
151 tr = 360 + tr if tr < 0
\r
154 r_to_index: (round_r) ->
\r
155 # 0 ~ 45 -> 22.5 ~ 66.5
\r
156 offset = @r_step() / 2.0
\r
158 Math.floor(((round_r + offset) % 360) / @r_step())
\r
160 class Pettanr.CircleSpeechBalloon.SpeechModule
\r
161 supply_default: (templates) ->
\r
162 @templates = templates
\r
163 s = @parsed_settings()['0']['speech']
\r
167 width: s['width_rate'],
\r
168 height: s['height_rate'],
\r
169 quotes: @parsed_settings()['speech_balloon']['quotes'],
\r
170 font_size: @parsed_settings()['speech_balloon']['default_font_size'],
\r
171 text_align: @parsed_settings()['speech_balloon']['default_text_align'],
\r
172 fore_color: @parsed_settings()['speech_balloon']['default_fore_color'],
\r
175 speech_extend: () ->
\r
178 speech_extend_setter: (params) ->
\r
180 @sex = new Pettanr.CircleSpeechBalloon.Speech(params)
\r
181 # no supply default params
\r
183 new_speech: (params = {}) ->
\r
184 @sex = new Pettanr.CircleSpeechBalloon.Speech(params)
\r
185 @sex.supply_default()
\r
187 parsed_settings: () ->
\r
188 return @parsed if @parsed
\r
189 @parsed = @templates.speech_balloon_template.parsed_settings()
\r
191 arrayed_quotes: () ->
\r
192 q = if Pettanr.is_blank(@get('quotes'))
\r
193 Pettanr.to_s(@parsed_settings()['speech_balloon']['quotes'])
\r